# [rrd-users] Re: Manipulating and Graphing Data

Tony Varriale tvarriale at comcast.net
Tue Oct 31 23:05:38 MET 2006

```> So let me get this right, if you feed in 0, 400, 800 at t=0, t=i,
> t=2i, you expect to get out <something>,400,400. I believe that can
> be achieved with the count or derive types. In a couple of
> applications at work, I feed in byte counts from iptables accounting
> rules and use derive - the output I get is the rate (bytes/second)
> which I can scale by multiplication (eg if I multiply by 300 then I
> get bytes/rra interval).

No...
For input:
t1:0
t2:400
t3:800
t4:0

I expect to graph:
t1:0
t2:400
t3:800
t4:0

Or something VERY close.  When I configure the RRD to be GAUGE...that is
what I get.  It's really close and I would be fine with that.  The problem
is that the graph continues to keep going up.

tv
----- Original Message -----
From: "Simon Hobson" <linux at thehobsons.co.uk>
To: <rrd-users at list.ee.ethz.ch>
Sent: Tuesday, October 31, 2006 12:35 PM
Subject: [rrd-users] Re: Manipulating and Graphing Data

> Tony Varriale wrote:
>
>>  > Closer, but it uses the values supplied AND THE TIME INTERVALS to
>>>  work out the rate over each interval defined in your rrd. If your
>>>  updates EXACTLY match the time intervals then the rate stored will
>>>  match the value you put in, otherwise it will be adjusted.
>>
>>Right, which is why when I use GAUGE for this specific application, the
>>value is preserved.  But, I would like to take the current and previous
>>gauge value and subtract them to get a new value.  Then, graph that new
>>value.  Once I figure out how to do that, I'm sure there will be some odd
>>issues such as counter flips.
>>
>>The math that is performed on these values with other data types is not
>>useful to me.  It appears GAUGE would be the only one that would work.
>
> So let me get this right, if you feed in 0, 400, 800 at t=0, t=i,
> t=2i, you expect to get out <something>,400,400. I believe that can
> be achieved with the count or derive types. In a couple of
> applications at work, I feed in byte counts from iptables accounting
> rules and use derive - the output I get is the rate (bytes/second)
> which I can scale by multiplication (eg if I multiply by 300 then I
> get bytes/rra interval).
>
> As I understand it, using derive, if the counters are reset (ie
> change from a number to a smaller number, such as when I reboot or
> reload iptables rules) then it will assume that you've 'lost' that
> interval rather than assuming you've wrapped around (very large
> positive value) or reduced (large negative value).
>
> --
> 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://lists.ee.ethz.ch/rrd-users