2013-02-18 33 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') ,并且还应该根据碳的保留期(一个或多个)进行缩放,这些期限属于选定的聚合区间。