2014-04-04 17 views
0

我们正在度量标准名称中存储具有内部版本号的度量标准。这是石墨中的度量格式。通过石墨中的正则表达式聚合多个指标的保留策略

latency.<host>.<request>.<buildNumber>.average 

问题与上面的格式是buildNumber是不断变化的价值,并在我们的情况下,它每周都会变化,因为发布周期。这导致每个星期都有新的存储文件(.wsp),由于耳语先前分配了空间,由于更改了内部版本号,我们从未充分利用空间。

我知道磁盘空间是便宜的资源,但仍然在某一点上,我认为我们会有很多未使用的空间。

例如,如果每个度量文件的大小是10MB,并且如果我们发送5000个不同的度量标准来等待延迟,那么对于特定的内部版本号,我们将使用50GB。 (1TB = 1000GB)/(每周50GB)= 20周

上面的问题可能会发生,如果每个星期我们发送一个新的内部版本号,那么1TB的磁盘空间将被填满20个星期,大约5个月如果我们可以在上个月汇总多个指标,就可以解决问题。有什么方法可以指定使用某种聚合方法将多个指标合并为一个的保留策略?

或者有什么办法可以解决石墨这类问题?

回答

1

如果您将Ceres存储引擎用于Graphite而不是使用Whisper,则可以避免预先分配空间的问题。 https://github.com/graphite-project/ceres

我不相信在下采样过程中,您可以合并具有指定聚合的多个指标。但是,您可以通过aggregation-rules.conf在摄入点执行此操作。文档可以在这里找到:http://graphite.readthedocs.org/en/latest/config-carbon.html#aggregation-rules-conf

+0

谢谢你的回答。谷歌是一个不错的选择,但它似乎并没有好的汇总功能。 –