如何创建DS以使用rrdtool存储另一个DS的累积结果

时间:2014-01-03 09:16:45

标签: rrdtool

我想创建一个包含两个数据源的rrd文件。一个存储数据的原始值,将其命名为“dc”。另一个存储'dc'的累计结果,将其命名为'total'。预期公式是当前(总)=先前(总)+当前(直流)。例如,如果我将数据序列(2,3,5,4,9)更新为rrd文件,我希望'dc'是(2,3,5,4,9),'total'是(2, 5,15,19,28)。

我尝试使用下面的命令行创建rrd文件。该命令失败,并表示DS COMPUTE不支持PREV。

rrdtool create test.rrd --start 920804700 --step 300 \
  DS:dc:GAUGE:600:0:U \
  DS:total:COMPUTE:PREV,dc,ADDNAN \
  RRA:AVERAGE:0.5:1:1200 \
  RRA:MIN:0.5:12:2400 \
  RRA:MAX:0.5:12:2400 \
  RRA:AVERAGE:0.5:12:2400

是否有其他方式来定义DS'总计'(DS:总计:COMPUTE:PREV,DC,ADDNAN)?

1 个答案:

答案 0 :(得分:2)

rrdtool不存储“原始”值...而是通过更新命令以您在设置数据库时定义的速率提供的信号示例...在您的情况下为1/300 Hz

说,总计没有多大意义......

您可以使用单个DS执行的操作,即在一个时间范围内构建平均值,并将结果乘以时间范围内的秒数,从而得出“总数”。