[rrd-users] Strange problem: data not updated?

Steve Shipway s.shipway at auckland.ac.nz
Sat Jul 26 01:03:51 CEST 2014

I think you are misunderstanding how to use the -t option, and as a result, have too many 'unknowns' in your database which combine to make unknowns entered into your RRA and so nothing updated.

If you have an RRD with 3 ds -- lets call them ds1, ds2 and ds3 -- then a normal update would be

rrdtool update $timestamp:$ds1value:$ds2value:$ds3value

which would update all DS for the time interval containing $timestamp (well, at least in part -- I'll get to that).

However, if you do this:

rrdtool update -t ds2 $timestamp:$ds2value

then what you are doing in effect is this:

rrdtool update $timestamp:UNKNOWN:$ds2value:UNKNOWN

So, when you update your database trying to set 'library' to one value, then to set 'attic' to another a few seconds later, you're actually telling RRDtool that  'attic' was unknown for a large part of the time and only the given value for the short period after.  If, in addition, the DS is not a GAUGE type, then the rate cannot be calculated at all as the previous value was unknown.  With all this unknown in place, then unless you have a very generous XFF setting on the RRA, all you'll get will be unknowns.

In short, when your data arrive at different times (as in this case) they should be in separate RRD files.  So, create separate RRDs with a single DS in each, rather than one RRD file with 3 DS, since you want to update the various DS independently of each other.


Steve Shipway
University of Auckland ITS
UNIX Systems Design Lead
s.shipway at auckland.ac.nz
Ph: +64 9 373 7599 ext 86487

More information about the rrd-users mailing list