我为 collectd 编写了自定义 python 插件:
import collectd
import random
def read_callback():
value = random.randint(0, 1500)
val = collectd.Values()
val.plugin = 'test'
val.plugin_instance = 'random'
val.type = 'counter'
val.type_instance = 'random'
val.values = [value]
val.dispatch()
collectd.register_read(read_callback)
因此,我期望在石墨中看到从 0 到 1500 的值,但得到了以下浮点数列表,其值远大于 1500:
我对基本插件及其指标没有任何问题,但这里的行为非常奇怪。有人知道原因和如何修复它吗?
答案1
问题在于 collectd-graphite 标志StoreRates
被设置为 True,这就是为什么 collectd 发送与之前不同的值,并且如果新值小于之前的值,我就会得到奇怪的行为。
如何解决同样的问题:将 StoreRates 设置为 false。