[rrd-users] can't sanity-check rrdtool with sample data ... please help

Simon Hobson linux at thehobsons.co.uk
Wed Jun 27 08:59:35 CEST 2007

Gore Jarold wrote:

>  > RRDtool behaviour is well documented.  You have
>>  selected a step
>>  size of 86400, so every timestamp is a whole
>>  multiple of 86400.
>Yes, I see that it is - and that is good, but it's the
>_wrong_ multiple of 86400 - the dates coming out of my
>RRD are (as far as I can tell) random.

Then you haven't looked very hard. They are not random - see comments below.

>Look at my create statement:
>rrdtool create hits.rrd --start 1141200000 --step
>86400 DS:hits:GAUGE:172800:0:U RRA:MAX:0.5:1:3650
>Notice how the --start is 1141200000  ?

And ? The docs say "Specifies the time in seconds since 1970-01-01 
UTC when the first value should be added to the RRD. RRDtool will not 
accept any data timed before or at the time specified." It doesn't 
say that it will align the sample periods to that time.

>Now look at my update statement - the first date is
>+86400 after --start, and each subsequent date is
>+86400 after the previous one:
>rrdtool update hits.rrd 1141286400:1 1141372800:10
>1141459200:10 1141545600:12 1141632000:12
>So now look at the output of:
>rrdtool fetch hits.rrd MAX --start 1141200000 --end
>1141257600: 1.0000000000e+00
>1141344000: 7.0000000000e+00
>1141430400: 1.0000000000e+01
>1141516800: 1.1333333333e+01
>1141603200: 1.2000000000e+01
>1141689600: 1.2000000000e+01
>Hmm... how very odd ... NOT ONE of those dates is in
>my 'rrdtool update' command.  Every single one of
>those six dates above is _from nowhere_.  I didn't
>start my RRD at any of those dates, and I have not
>entered data for any of those dates.

They didn't come from nowhere. 1141257600 is 00:00, 13209 days from 1 Jan 1970.

>So where did those dates come from ?

Multiples of 86400 from epoch, didn't you try "1141257600 / 86400" to 
see what you got ?

>   The fact that
>they are all +86400 from each other is not useful when
>they are not the data I entered...
>(and this, of course, does not even mention the fact
>that my data input was:
>1, 10, 10, 12, 12, 12
>and 'fetch' output:
>1, 7, 10, 11.3, 12, 12

>Yes, I have read the HOWTOs - as you can see all of my
>command lines are just fine.

You think they are fine.

>   What I would like to
>know is, how do I put in certain data and then get
>that same data back out ?  As you can see I was not
>able to here...

Have you studied http://www.vandenbogaerdt.nl/rrdtool/process.php ?

The answer is simple, and has been dealt with on this list many 
times. If you enter all your values EXACTLY on multiples of step size 
after epoch then you will get the same rate out as you put in.

More information about the rrd-users mailing list