Graphite指标显示错误的结果

时间:2017-03-07 13:42:52

标签: dropwizard graphite codahale-metrics

我正在使用Graphite和Codahale来记录我的java服务器的指标。我有一个看起来像这样的块代码:

public void foo() {
  try (Timer.Context ignored = myTimer.start()) {
    // Some code
  }
}

当我看今天的事件计数(每个计时器也是一个计数器)时,我发现我们每分钟大约有一百个命中计数,这意味着每小时几千个。当我将日期范围扩大到包括昨天时,我看到结果是在数百万范围内,我无法弄清楚原因。

结果显示在对指标的非负面衍生操作之后

今天的结果:

Today

昨天的结果:

enter image description here

2 个答案:

答案 0 :(得分:2)

如果使用nonNegativeDerivative() - 请首先应用导数,然后应用sumSeries() - 反之亦然。请检查http://www.jilles.net/perma/2013/08/22/how-to-do-graphite-derivatives-correctly/

此外,您需要为http://obfuscurity.com/2012/05/A-Precautionary-Tale-for-Graphite-Users

中描述的计数器设置正确的聚合(总和)

答案 1 :(得分:2)

你不想在dropwizard计数器上使用sum。你想使用“最后”它们递增递减量规。你还需要perSecond()和hitcount(10s)而不是衍生物。

http://graphite.readthedocs.io/en/latest/functions.html#graphite.render.functions.perSecond