[rrd-users] rrd graph question - re-post - where are the experts?

rrd-users at ficos.de rrd-users at ficos.de
Tue Sep 8 22:24:30 CEST 2009

re-posting the question in the hope to find some help ...

Hi there,

I'm pretty familiar with rrdtool & graph so far but I have a
problem I wasn't able to solve yet and could use some help:

I need to mimick the COUNTER behavior on GAUGE stored values.
The rrd recording mechanism can't be changed, so I need to do
it on the graphing end.

What I have is a GAUGE number of items that gets recorded every
few seconds but changes *infrequently*.
What I want is a graph that shows an average rate for the period.


12:00:05  200
12:00:10  260
12:00:15  260
12:00:20  260
12:00:25  260
12:00:30  340

At the step from :25 to :30 I have a change of 80, but 260 was
there for 20 seconds (:10 .. :30) so the average is 80/20 = 4/s

So rather than having a graph that shows
[ CDEF:graph=val,PREV(val),- ]

12:00:05  UNKN
12:00:10  60
12:00:15  0
12:00:20  0
12:00:25  0
12:00:30  80

I'd like to have a graph that shows the equivalent for the sentence
"between 12:00:10 and 12:00:30 I had a rate of 4/s"

12:00:05  UNKN
12:00:10  UNKN
12:00:15  4
12:00:20  4
12:00:25  4
12:00:30  4

The problem is the changes are *infrequent*, so sometimes I get a new 
value after 5secs, sometimes after 2min etc. so I always have to
calculate 'backwards' from the current change to the previous change.
The problem is that I don't know the time span of the period before
I reach the end, but I can't step back to fill the graph for the time
span just passed.

Easy to do in Excel but (so far) almost impossible with rrdgraph.

I guess the solution means shifting the data on the x-axis to be able
to 'peek in the future' but still I don't know how far I should go.
However, If I go far enough (like 1 hour) that should be sufficient.

Any help appreciated!

- Karl

rrd-users mailing list
rrd-users at lists.oetiker.ch

More information about the rrd-users mailing list