我想测量服务器在持续集成期间的CPU和内存使用情况,并将它们表示为几个图表。我使用RRD4J库在java中使用循环数据库文件(*.rrd)来做这件事。
我不知道如何定义循环档案库。我试过这样的RRA:
rrdDefCPU.addDatasource("CPU", DsType.COUNTER, 150, 0, 100);
rrdDefCPU.addArchive("RRA:AVERAGE:0.5:8:300"); 或
rrdDefCPU.addDatasource("CPU", DsType.COUNTER, 600, 0, 100);
rrdDefCPU.addArchive("RRA:AVERAGE:0.5:1:600"); 在这两种情况下,我每秒记录一个度量值,但在5分钟的时间内,我仍然在图表上记录2个点。我想要一个图表与更多的值在同一时期。
发布于 2011-06-29 00:52:13
如果您在5分钟的时间间隔内没有看到更多细节,那么我猜您的步长是5分钟,您是通过复制演示代码获得的。请在您的问题中显示您的RrdDef构造函数。
RrdDef rrdDef = new RrdDef(rrdPath, startTime, 300); // step size 300s此外,您可能需要一个cpu/内存使用量的量规,而不是一个只会上升的计数器。如果你错误地使用计数器,你会得到尖峰输出,因为RRD将下移解释为溢出,并向该观察添加了非常大的量。
在您的代码中,您将改变心跳大小,它与Xff相结合来确定输入中允许的间隔大小。如果你有连续的数据,你不会看到改变HB的任何影响。
https://stackoverflow.com/questions/6073680
复制相似问题