如何创建具有特定时间RRD文件?(How to create a rrd file with a s

2019-10-28 13:35发布

我已经创建了一个特定时间的RRD文件。 但是,当我把它转换成XML,我觉得开始时间是inconsitent在规定时间。

rrdtool的版本是1.5.5。

而且代码

> rrdtool create abc.rrd \ 
> step 15 --start 1554122342 \  DS:sum:GAUGE:120:U:U \  RRA:AVERAGE:0.5:1:5856 \  RRA:AVERAGE:0.5:4:20160 \ 
> RRA:AVERAGE:0.5:40:52704

前几行就好

> <!-- 2019-03-31 20:15:15 CST / 1554034515 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:15:30 CST / 1554034530 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:15:45 CST / 1554034545 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:16:00 CST / 1554034560 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:16:15 CST / 1554034575 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:16:30 CST / 1554034590 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:16:45 CST / 1554034605 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:17:00 CST / 1554034620 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:17:15 CST / 1554034635 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:17:30 CST / 1554034650 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:17:45 CST / 1554034665 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:18:00 CST / 1554034680 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:18:15 CST / 1554034695 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:18:30 CST / 1554034710 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:18:45 CST / 1554034725 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:19:00 CST / 1554034740 --> <row><v>NaN</v></row>
>           <!-- 2019-03-31 20:19:15 CST / 1554034755 --> <row><v>NaN</v></row>

我尝试其它参数,例如默认(现在-10),但时间间隔为约一天。

Answer 1:

(我的例子在下面的RRDTool 1.5.5测试)

您的RRA约为1年之久,在10分钟的时间间隔; 用15S建立RRD。

当你创建一个RRD的start时间是最近的数据点或最后一次更新的时间; 换句话说,你不能早于这个时间添加任何数据。 该RRA将被初始化unknown贯穿始终。

所以,当您创建RRD有:

rrdtool create abc.rrd --step 15 --start 1554122342  \
    DS:sum:GAUGE:120:U:U RRA:AVERAGE:0.5:40:52704`

你可以看到这一点使用rrdtool info (输出修剪为清楚起见):

$ rrdtool info abc.rrd 
filename = "abc.rrd"
...
last_update = 1554122342

当你再使用rrdtool dump立即查看RRA的内容,你可以看到,它开始约一年前:

$ rrdtool dump abc.rrd
...
<lastupdate>1554122342</lastupdate> <!-- 2019-04-02 01:39:02 NZDT -->
...
    <database>
        <!-- 2018-04-01 01:40:00 NZDT / 1522500000 --> <row><v>NaN</v></row>
        <!-- 2018-04-01 01:50:00 NZDT / 1522500600 --> <row><v>NaN</v></row>
...
        <!-- 2019-04-02 01:20:00 NZDT / 1554121200 --> <row><v>NaN</v></row>
        <!-- 2019-04-02 01:30:00 NZDT / 1554121800 --> <row><v>NaN</v></row>
    </database>

但是且慢! 这结束在1554121800,但我们的最后一次更新(开始时间)为1554122342! 这是542的差别为什么会变成这样?

其原因是,尽管你的步骤为15秒,该间隔RRA是40步,IE 600S。 下一个条目不能被添加,直到有数据600S,而我们只有542因此,如在RRA中的最后一项。 请注意,所有的时间间隔是相对于UCT规范化,所以您的RRA CDP(consolodated数据点)将永远是间隔大小的倍数 - 在这种情况下,600 - 无论何时你设置“开始”的是。 RRDTool的将只挑选最接近的一次。 这种现象变得更加当你卷起一个大的时间段明显 - 例如,第1天 - 和你住在一个更极端的时区 - 例如奥克兰UCT + 13。

当然,一旦你写什么到RRD,那么LASTUPDATE会有所改变,而且RRA将新增但是需要许多新的点(拖放当然旧的)。



文章来源: How to create a rrd file with a specific time?
标签: rrdtool rrd