所以我正在为openvz_guest_bandwidth编写一个读取插件Collectd,在那里我通过使用Openvz来查询外部有多少带宽libiptc。每个客人正在做的带宽。
然后我将此信息报告给我写的write_mongodb plugin(可能与破损有关)
问题在于我在mongo中看到了记录,
{ "_id" : ObjectId("4f480c15573fa191fa838140"), "ts" : ISODate("2012-02-24T22:15:33Z"), "h" : "62f34634-0fac-4b5f-a7a5-45532ef6dd3b", "i" : "rx", "t" : "counter", "ti" : "", "value" : NumberLong("3970318241") }
{ "_id" : ObjectId("4f480c15573fa191fa838141"), "ts" : ISODate("2012-02-24T22:15:34Z"), "h" : "62f34634-0fac-4b5f-a7a5-45532ef6dd3b", "i" : "tx", "t" : "counter", "ti" : "", "value" : NumberLong(50070094) }
{ "_id" : ObjectId("4f480c15573fa191fa838142"), "ts" : ISODate("2012-02-24T22:15:34Z"), "h" : "62f34634-0fac-4b5f-a7a5-45532ef6dd3b", "i" : "rx", "t" : "counter", "ti" : "", "value" : NumberLong("3970322447") }
{ "_id" : ObjectId("4f480c15573fa191fa838143"), "ts" : ISODate("2012-02-24T22:15:35Z"), "h" : "62f34634-0fac-4b5f-a7a5-45532ef6dd3b", "i" : "tx", "t" : "counter", "ti" : "", "value" : NumberLong(50070094) }
{ "_id" : ObjectId("4f480c15573fa191fa838144"), "ts" : ISODate("2012-02-24T22:15:35Z"), "h" : "62f34634-0fac-4b5f-a7a5-45532ef6dd3b", "i" : "rx", "t" : "counter", "ti" : "", "value" : NumberLong("3970325247") }
有趣的值在最后。我希望报告的值是连续记录之间的差异,而不是计数器读取的值。
这类似于COUNTER的RRD计数器类型,而不是我所理解的ABSOLUTE。
我非常坚持这一点,我不确定故障可能在哪里,甚至更进一步如何纠正它。错误可能是阅读或写作。
作为旁注,在值到达write_mongodb之前,它们通过collectd网络插件发送。
我似乎在value_list.plugin
和value_list.plugin_instance
之间感到困惑。其他插件似乎使用的类型在内存集合中提供了一个非常无用的字段,例如"t: 'memory'"
。
答案 0 :(得分:1)
Octo,collectd维护者指出write_mongodb插件没有使用某个函数调用和配置检查来查看它是否应该写入增量。