使用statsd和graphite收到的指标数量未知

时间:2015-04-14 09:57:39

标签: graphite statsd grafana

我正在尝试收集有关石墨和碳守护进程性能的一些数据。对我来说幸运的是,碳守护进程每隔60秒向石墨报告一次,其中包含一些工作统计数据,例如收到的指标数量。

我正在使用statsd聚合统计数据并每秒将它们刷新到碳守护进程,但在设置显示某个时间间隔内收到的指标数量时会发现一些奇怪的行为。我正在使用grafana连接到我的Graphite实例并从中提取数据。 每当statsd没有运行并且我检查收到的指标数量时它仍然为0,这并不奇怪,因为没有任何东西发送它。但是,当我开始统计数据时,这个数字会迅速上升到每分钟大约800/900,而我没有发送任何统计数据,如图所示: Metrics received when statsd is running

我不知道这些指标的来源以及它们为何以每秒15的速度发生。此外,每当我启动statsd时,CPU都会将负载增加大约10%。 我注意到的是,当我增加statsd的刷新间隔时,收到的指标数量会减少。

这是我的statsd配置文件:

{
  graphitePort: 2003,
  graphiteHost: "127.0.0.1",
  port: 8125,
  backends: ["./backends/graphite"],
  flushInterval: 1000, // Don't increase this past the lowest retention schema of graphite
  prefixStats: "test",
  graphite: {
    legacyNamespace: false
  }
}

这是我的石墨存储架构:

[carbon]
pattern = ^carbon\.
retentions = 60s:90d,300s:365d

[stats]
pattern = ^stats\..*
retentions = 1:2160,10:2160,60:10080,600:262974

[system]
pattern = ^system\..*
retentions = 10:2160,60:10080,600:262974

2 个答案:

答案 0 :(得分:0)

我相信statsd会向Graphite发送自己的效果指标,即使您没有向statsd发送您自己的任何指标。例如,我可以找到stats.statsd.processing_timestats.statsd.graphiteStats.* ...

与Carbon相同,即使您没有发送任何内容,也可以获得指标数量的指标。将它们视为内部指标。

退房 https://github.com/etsy/statsd/blob/1590bcf56ea1a3ac167f62fba3d599b65582d5ea/docs/admin_interface.mdhttps://github.com/etsy/statsd/blob/917a3e4276daf2587c30fcfcce65b0066e776626/backends/graphite.js

答案 1 :(得分:0)

Statsd将在每个时间间隔内将相同数量的指标报告给碳。无论使用多少指标statsd,您每10或60秒向后端写入相同的聚合统计数据组。