1

任何人都可以向我解释为什么当我从我的 rrd-db 获取时得到的值与我填充的值不同。

以下是命令:

一个。创建数据库

rrdtool create temperature.rrd --step 300 -b 1374150100 \
 DS:temp:GAUGE:300:N:N \
 RRA:AVERAGE:0:1:5

湾。填写数据

rrdtool update temperature.rrd \
 1374150400:6 \
 1374150700:8 \ 
 1374151000:4 \ 
 1374151300:4

C。获取数据

rrdtool fetch temperature.rrd AVERAGE --start 1374150099 --end 1374151301

输出:

                           temp

1374150300: 6.0000000000e+00
1374150600: 7.3333333333e+00
1374150900: 5.3333333333e+00
1374151200: 4.0000000000e+00
1374151500: -nan

我用数据在确切的时间段内填充数据库。我不知道为什么它显示 7.3 和 5.3?!我错过了什么吗?

4

1 回答 1

0

好,我知道了。问题是,开始时间不适合步长间隔。正如您在输出中看到的,这些步骤从 ...300 开始,然后是 ...600,依此类推。我用 ...400、...700 等填充数据。所以解决方案是将值设置在正确的步长间隔中,然后它就可以工作了

于 2013-07-19T07:40:28.280 回答