我使用RRD进行监控。在目前的RRD文件中,并不是所有的档案都是我将来想要使用的。如何将RRA添加到现有的RRD?我正在使用rrdpython编写Python(1.4.7)脚本。
我只找到了将其转储为XML、添加归档并再次恢复的选项。但这听起来既不吸引人,也不快速。
如果没有好的解决方案,我如何轻松地"复制"RRD的内容以将其添加到包含存档的新RRD(通过使用'update'我猜)?(在python中)
提前感谢。
在RRDTool 1.4及更早的版本下,您不能在不重新创建的情况下向现有的RRD文件中添加DS或RRA。新发布的RRDTool 1.5能够使用rrdtool tune
子命令添加新的DS和RRA,但这可能还没有在您的操作系统中提供Python绑定。
对于1.4,添加新RRA的唯一方法是将现有文件转储为XML,修改XML,然后恢复它以创建新的RRD。不用说,这不是微不足道的,并且不一定是从其他RRA中的历史数据构建新RRA中的数据。有很多第三方工具可以做到这一点,比如rrdmerge
(与Routers2包一起发布),但是它们都有这样或那样的缺点。