2013-02-18 37 views
1

我有一個系列列表*.in.count表示進入隊列的消息數。如果我繪製列表作爲-是這將是一個永遠往上走線:按時間段分割連續計數器

enter image description here

我想知道的是,許多消息是如何進入彙總和按小時總結出一個隊列,白天覆位。事情是這樣的:

enter image description here

我嘗試用石墨功能,但不能找到一種方法來實現這一目標。

+1

我認爲你不可能只用Graphite來實現這一點。您需要在Graphite前面的其他組件重新設置指標。 – 2013-04-17 17:59:36

回答

2

要在Graphite中隨時間聚合事件,您可以合併使用group(),sumSeries()summarize()函數將指標拉入單個系列,然後sumSeries將它們相加,然後總結將它們聚合一段時間。

例如:

1小時和:

summarize(sumSeries(group(*.in.count)),"1h") 

1天總結

summarize(sumSeries(group(*.in.count)),"1d") 

然後,讓圖形看起來像你想要的(即如條形圖),您應該將「線路模式」設置爲樓梯線和「Area Mode」至Stacked全部

+0

'總結'方法對我不起作用。測試指標由dropwizard(codehale)'counter.inc'和'meter.mark'報告。有了這兩個指標,它永遠在線上直到應用程序重新啓動。並總結給予相同(不斷增加)的圖有或沒有分組和sumSeries。 – Sasha 2016-11-23 15:12:17

0

老問題,但對於其他搜索着想:

綜上所述或計算出每間隔數(總):據我所知它裏面的所有魔法

hitcount(perSecond(your.count), '1day') 

。包括但不限於summarize(scaleToSeconds(nonNegativeDerivative(your.count),1), '1day') ,並且還應該根據碳的保留期(一個或多個)進行縮放,這些期限屬於選定的聚合區間。