[rrd-users] Re: create --start xxxx

Alex van den Bogaerdt alex at ergens.op.HET.NET
Thu Aug 8 02:39:36 MEST 2002

scott.list wrote:
> > The question was: how to prevent this normalizing.  The only thing
> to
> > do is to make sure
> > normalizing becomes a no-op.
> Alex:  Can you elaborate on the above?  I believe this is realted to a
> questions I asked awhile back but got no answers.  I figured my
> question wasn't worded well enough.  Anyway, any elaboration
> appreciated.
> I'm doing all I can to ensure my data is hitting the rrd at the proper
> times but I'm still seeing occasional normalizations.  Any example or
> suggestions on how to insure it becomes no-op, or exactly what you
> mean?

faq site: http://faq.mrtg.org/information.html
scroll down to "Problem 3: irregular sample periods"

Each interval is "m" seconds large.  RRDtool will always store (so:
after normalizing the data) a complete interval.  The first interval
ever started at time 0, the second interval starts at 1*m, the third
interval starts at 2*m.  --->  "n*m" where n is an integer and "m"
is the lenght of an interval (defined by --step).

Current time: 1028765858

For intervals of 86400 seconds (one day) this time belongs to interval
int(1028765858/86400) to int(1+ 1028765858/86400).

This means n=11907 and m=86400 --> time 1028764800 to 1028851200.

For *my* timezone this is august 8th, 02:00 to august 9th, 02:00.
For others this may be different.

If I update now, or if I update at any other time than 1028851200,
RRDtool will normalize the rates.  Only when I update at 1028851200
there's nothing to do ---> no-op.

Midnight *my* timezone was 1028757600.  When divided by 86400 this
has a remainder.  The key here to understand is that timezones are
(for the biggest part of the world anyway) a whole number of hours
away from UTC.  Also think about daylight saving; where I live the
time in winter is only one hour ahead of UTC, during the summer it
is two hours away from UTC.

To be able to update at midnight, winter *and* summer, I need to be
able to make "n*m" result in midnight.  There are many combinations
possible for "n" and "m" but setting 24 (sometimes 23 or 25) intervals
of 3600 seconds in one update command is the most effective -> m==3600.

august 9th, midnight my timezone is 1028757600.  1028757600/3600 is
285766 remainder 0.  This is therefore "the right time" for an RRD
with "--step 3600".  The rate is already there at the end of an
interval and no normalization will occur --> no alteration of the
rate I enter.

Just make sure RRDtool allows for setting the rate once per day, this
means the heartbeat *must* be 25*3600 or higher (25 because of the
change in daylight saving when there *are* 25 hours in a day).

 / alex at slot.hollandcasino.nl                  alex at ergens.op.het.net \
| work                                                         private |
| My employer is capable of speaking therefore I speak only for myself |
| Technical questions sent directly to me will be nuked. Use the list. | 
| http://faq.mrtg.org/                                                 |
| http://rrdtool.eu.org  --> tutorial                                  |

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