如何在Java中正确读取RRD文件?

0 投票
3 回答
3023 浏览
提问于 2025-04-16 14:56

我们该如何用Java正确读取RRD文件呢?我们正在使用像JRobin这样的工具,但我的团队在使用这些工具时遇到了问题,它们似乎无法正确读取RRD文件。我们需要使用RRDTool,而这个工具是一个可以在Python中使用的库。

3 个回答

1

原始文档来自 RRDTools网站,介绍了导出和导入任何数据库的常见方法:

To transfer an RRD between architectures, follow these steps:
   1. On the same system where the RRD was created, use rrdtool 
    dump to export the data to XML format.
   2. Transfer the XML dump to the target system.
   3. Run rrdtool restore to create a new RRD from the XML dump. 
    See rrdrestore  for details.

我可以确认在 JRobin,这是Sasa Markovic开发的RRDTool的Java版本上也有完全相同的功能。我为分支的 RRD-ws项目进行了仔细测试。在大多数情况下,它在Java(Jrobin)和本地(RRDTools)之间,以及Linux、Solaris和Windows之间都能很好地工作。

所以可能的步骤是: 1) 导出(转储)本地RRD数据库 2) 通过JRobin读取(恢复)为Jrobin-DB 3) 使用Jrobin-API

附注

如果你遇到问题,可以随时在 rrdws问题数据库中发布你的困扰。

1

使用“rrdtool -”这个管道接口,然后用真正的rrdtool来访问文件。

1

你可以试试用JPython来把它连接到Java上。

不过最简单的办法可能是直接用Python,或者修复一下JRobin里的错误。毕竟它是开源的。

撰写回答