2016-11-28 38 views
0

我們希望使用Graphite繪製與事件相關的值,例如「一封N封信息已發佈」。當沒有數據包發佈時,根本沒有代碼運行,所以我們不能發送零到Graphite。在Graphite中繪製事件值

本質上,我們想計算每秒的某種發佈速率。

以下是我們發送到石墨(添加了時間戳)一些示例數據:

2016-11-28 14:46:33.6338Z api.message.publication.count:100 
2016-11-28 15:01:36.0780Z api.message.publication.count:12 
2016-11-28 15:01:36.9911Z api.message.publication.count:1 
2016-11-28 15:01:37.0679Z api.message.publication.count:100 

之間14時46分33秒和15時01分36秒,沒有消息被髮送。但是,在15點01分36秒和15點01分37秒之間,發送了13條消息(報告爲兩個值,12和1)。

我試過summarize()函數,但它沒有給出對我有意義的結果,即我無法關聯我發送給Graphite的內容以及Graphite顯示的內容。此外,summarize()似乎不支持1秒的間隔(我已經嘗試了「1秒」和「1秒」的間隔參數)。

perSecond()函數計算變化率(即導數),但我們發送的是已經是一種衍生物(也許它更接近狄拉克三角?),所以它在我們的上下文中沒有意義。

我們是否完全關閉,或者有什麼方法可以與Graphite合作?


編輯:我想我們需要爲我們的數據添加一個聚合階段。碳聚合是否符合這個法案?

回答