[rrd-users] Re: Data granularity

Tolga Yalcinkaya tolga at allesta.com
Fri Jan 21 00:59:52 MET 2005

Comments below...

Serge Maandag wrote:
> No, rrdtool normalizes your input. Therefore it really only is useful
> if you enter data in a regular interval.
> Say you updated like this:
> rrdtool update resp.rrd 1106249073:15
> rrdtool update resp.rrd 1106249083:45
> Then after the second update, rrdtool is able to determine the value
> At timestamp 1106249080. It would be:
> (45-15) * (1106249080-1106249073)/(1106249083-1106249073)
> = 30 * 7/10 = 21

Ahhh I see...

> It is interpolated because you did not update on a N x 10 seconds
> timestamp
> In your case the value is unknown, because you have no previous value to
> use for interpolation. You need multiple consecutive values for that.

Got it...

>>Is there a way to retain the value entered for that step?
> One solution is to set the heartbeat very high, so multiple rows will be
> filled by a single update, but that is not what you want.
> What you could try is:
> - update only on N x 10 timestamps. So 1106249083 would become:
>   10 x int(1106249083/10) = 1106249080 or

Hmm... not sure if this will work.  Wouldn't I have the same problem, 
since there is going to be only one data point at N x 10 timestamps?

> - before updating, do a "rrdtool last" to get the last time the database
>   was updated. Then for ech step size between now and that last update
> time,
>   update the database with 0.

This would skew the averages, since the empty data points are not NaN...

How about this approach:

rrdtool create resp.rrd --step 1 \
  	DS:resp:GAUGE:1:0:U \

When I do an update I do it like this:

if (lastUpdate < now - 1) {
  rrdtool update resp.rrd ${now - 1}:45

rrdtool update resp.rrd ${now}:45

Do you foresee any problems with this approach?

> I still would use the log file solution.
> It's way cleaner.

I agree that log file would solve the problem in a way, but it would 
also introduce added complexity.  It is more more thing that could break 
and I need to watch out.  If I can't solve the problem, I will 
definitely try this method.


Tolga Yalcinkaya

WSABI:  A fiery condiment for Apache Axis!   http://www.wsabi.org

Unsubscribe mailto:rrd-users-request at list.ee.ethz.ch?subject=unsubscribe
Help        mailto:rrd-users-request at list.ee.ethz.ch?subject=help
Archive     http://www.ee.ethz.ch/~slist/rrd-users
WebAdmin    http://www.ee.ethz.ch/~slist/lsg2.cgi

More information about the rrd-users mailing list