【问题标题】:graphite + statsd, missing stats?石墨 + statsd,缺少统计数据?
【发布时间】:2014-03-13 09:11:13
【问题描述】:

我们使用 statsd 作为聚合器,在 60 秒后转发到石墨。

我可以看到石墨填充了“stats.timers”存储桶。但不是所有预期的。

在石墨机器上:

graphite:/opt/graphite # find .../xxx/desktopapp/members/contacting -name "*.wsp"
.../xxx/desktopapp/members/contacting/lastVisitors/mean_90.wsp
.../xxx/desktopapp/members/contacting/lastVisitors/sum.wsp
.../xxx/desktopapp/members/contacting/lastVisitors/std.wsp
.../xxx/desktopapp/members/contacting/welcome/count_ps.wsp
.../xxx/desktopapp/members/contacting/feditWelcome/mean.wsp
.../xxx/desktopapp/members/contacting/contacts/count.wsp
.../xxx/desktopapp/members/contacting/contacts/sum_90.wsp
.../xxx/desktopapp/members/contacting/preContact/count_ps.wsp
.../xxx/desktopapp/members/contacting/preContact/mean_90.wsp
.../xxx/desktopapp/members/contacting/preContact/sum.wsp
.../xxx/desktopapp/members/contacting/preContact/std.wsp
.../xxx/desktopapp/members/contacting/preContact/count.wsp
.../xxx/desktopapp/members/contacting/preContact/sum_90.wsp
.../xxx/desktopapp/members/contacting/fedit/upper.wsp
.../xxx/desktopapp/members/contacting/preWelcome/count_ps.wsp
.../xxx/desktopapp/members/contacting/preWelcome/sum.wsp
.../xxx/desktopapp/members/contacting/preWelcome/std.wsp
.../xxx/desktopapp/members/contacting/contact/count_ps.wsp
.../xxx/desktopapp/members/contacting/contact/sum.wsp
.../xxx/desktopapp/members/contacting/contact/std.wsp
.../xxx/desktopapp/members/contacting/favorite/median.wsp

查看 statsd 源代码 (https://github.com/etsy/statsd/blob/master/lib/process_metrics.js),我希望每次发生的事情都会出现以下指标(每个都作为自己的存储桶)。

来源:

    current_timer_data["std"] = stddev;
    current_timer_data["upper"] = max;
    current_timer_data["lower"] = min;
    current_timer_data["count"] = timer_counters[key];
    current_timer_data["count_ps"] = timer_counters[key] / (flushInterval / 1000);
    current_timer_data["sum"] = sum;
    current_timer_data["mean"] = mean;
    current_timer_data["median"] = median;

任何人都知道为什么对于某些人我只得到“count_ps”而对于其他人我得到“upper”。石墨是否需要一些时间来处理其内部统计队列?

statsd 日志显示大约 500 numstats / min 被发送:

13 Mar 10:13:53 - DEBUG: numStats: 498
13 Mar 10:14:53 - DEBUG: numStats: 506
13 Mar 10:15:53 - DEBUG: numStats: 491
13 Mar 10:16:53 - DEBUG: numStats: 500
13 Mar 10:17:53 - DEBUG: numStats: 488
13 Mar 10:18:53 - DEBUG: numStats: 482
13 Mar 10:19:53 - DEBUG: numStats: 486

任何帮助都非常感谢

干杯 马塞尔

【问题讨论】:

    标签: graphite statsd graphite-carbon


    【解决方案1】:

    @marcel,你有没有在你的statsd 的local.js 中配置percentThreshold:? 要获得“上层”指标,首先您需要确保指标如何发送到statsd。 例如。要使用 statsd 的计时器桶,您需要发送指标并指定其类型,例如

    将指标类型指定为计时器:

    echo "xx.yy.zz:<data point>|t"

    【讨论】:

      【解决方案2】:

      我已经看到,对于稀疏数据集,所有统计数据似乎需要一段时间才能显示在石墨中。我不知道确切的阈值,但根据我的经验,在显示所有不同的计时器统计信息之前,似乎需要将一定数量的数据推送到石墨中作为指标。

      【讨论】:

      • 此外,对于每分钟可以添加多少新统计数据,Graphite 有一个相当保守的默认值(因此当发生事故时,它不会在新文件中淹没文件系统)。当我们添加大量新指标时,可能需要一天多的时间才能显示所有新指标。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-16
      • 1970-01-01
      • 2015-01-25
      • 2018-10-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多