Graphite:每点时间精度

1 投票
2 回答
2590 浏览
提问于 2025-04-17 06:46

是否可以以毫秒为单位存储每个点的时间?

因为Graphite是基于Whisper的,所以我查看了whisper.py这个文件。这个文件里包含了:

UnitMultipliers = {
   's' : 1,
   'm' : 60,
   'h' : 60 * 60,
   'd' : 60 * 60 * 24,
   'y' : 60 * 60 * 24 * 365,
}

所以看起来它最多只能记录到1秒的精度。那我该如何处理一个每10毫秒就会产生一个事件的系统呢?

2 个回答

1

因为石墨烯(graphite)无法以10毫秒的间隔存储数据,你可以尝试把数据发送到statsD系统。然后再把这些数据从statsD转存到石墨烯。

你可以在 github.com 上找到statsD的代码。

在codeascraft.etsy.com上了解statsD的介绍

5

你可以把数据发送到carbon-aggregator守护进程或者Statsd。这两个都是聚合器,它们会把毫秒级的数据汇总成每秒的值。对于carbon-aggregator,你需要设置一下聚合器,告诉它你想怎么处理数据,比如求和、平均值等等。而对于Statsd,调用的接口会决定使用什么样的聚合方式,所以你不需要提前配置。

撰写回答