[rrd-users] unexpected behavior of GPRINT and DEFS with start= args

Martin Sperl rrdtool at martin.sperl.org
Thu Jun 30 19:54:10 CEST 2011


I have a unexpected behavior with a graph that is created similar to this (simplified):
  --start=1309282387 \
  --end=1309285987 \
  'DEF:avg=test.rrd:value:AVERAGE:start=1308677587' \
  'LINE1:avg:average' \
  'GPRINT:avg:MIN:(%9.2lf' \
  'GPRINT:avg:AVERAGE:/%9.2lf' \
  'GPRINT:avg:MAX:/%9.2lf' \

I was assuming that the GPRINT would only be calculating the min/max/average/last for the area really graphed (3600 seconds).
But it seems it is calculating it for the whole 7 days and 1 hour (=608400 seconds) that got loaded in DEF.

Is this "expected" and/or "intended" behavior?

If it is, is there an easy means to get what I really need - just the values for what I graph.

You may ask why I use "start=" in the DEF in the first place.

The explanation is that I essentially need it for predictions using the PREDICT CDEF function.
And it came as a surprise when I was trying to estimate the AVERAGE of a graph zoomed in on an "outage", which showed the difference between the average and the prediction (using "CDEF:delta=avg,604800,604800,518400,432000,345600,259200,172800,86400,8,1800,avg,PREDICT,-")
I was expecting an average of -8 as the average but got 0.28, which would be realistic for the whole 7 days.


More information about the rrd-users mailing list