[rrd-developers] Re: documentation: templates for ansychronous update
Tobias Oetiker
oetiker at ee.ethz.ch
Fri Feb 16 22:30:54 MET 2001
Today Jake Brutlag wrote:
|
| The template option to the update command is very flexible. It allows the
| user to update data sources asynchronously. However, there is a subtle
| different behavior that perhaps should be noted in the documentation.
well when I saw your example in the previous post I was already
weary and I wanted to say something, but then I sent the mail
without having done so ... in any case here goes
whenever there is an update to an .rrd ALL the datasouces receive
an update if a datasource is not updated because it is not in the
template, rrdtool assumes that the datasource is unknown and
updates it accordingly ...
there is no such thing as an asynchronous update for individual
datasources in an rrd ... it may aprear like this, but it is not
the case ...
In any event, there is a problem for 'caculated datasources' in
that respect. The --step of a CDEF is calculated from the steps of
all DEFs used withing the CDEF rpn. This means a CDEF-DS would
probably have to live in its own rrd or in a rrd with compatible
step ...
cheers
tobi
| Consider 2 GAUGE data sources, ds1 and ds2, in an rrd file, dummy.rrd with
| one RRA (CF AVERAGE and 1 PDP = 1 CDP). Assume the step is the default 300
| seconds. Here is the current state of the rrd file (the results from fetch):
| 957299100: 4.5273333333e+03 3.9173333333e+03
| 957299400: 4.5936666667e+03 3.8680000000e+03
| 957299700: 4.5046666667e+03 3.8770000000e+03
| 957300000: 4.2830000000e+03 3.6453333333e+03
| 957300300: NaN NaN
| 957300600: NaN NaN
| 957300900: NaN NaN
| Now consider the asynchronous updates:
| bin/rrdtool update dummy.rrd -t ds1 957300297:2877
| bin/rrdtool update dummy.rrd -t ds2 957300304:3300
| bin/rrdtool update dummy.rrd -t ds2 957300601:4000
| bin/rrdtool update dummy.rrd -t ds1 957300603:4030
| Note that these updates must appear in temporal order. After these updates,
| here is the current state of the file:
| 957299100: 4.5273333333e+03 3.9173333333e+03
| 957299400: 4.5936666667e+03 3.8680000000e+03
| 957299700: 4.5046666667e+03 3.8770000000e+03
| 957300000: 4.2830000000e+03 3.6453333333e+03
| 957300300: 3.3342390572e+03 3.5213592233e+03
| 957300600: NaN 3.9906666667e+03
| 957300900: NaN NaN
| Note that the first data source has reverted to NaN, due to the fact that
| the PDP was computed when the third request was processed. Now instead of
| the asynchronous updates, suppose updates to both data sources where
| synchronized:
| bin/rrdtool update dummy.rrd 957300297:2877:3300
| bin/rrdtool update dummy.rrd 957300601:4030:4000
| After these updates, here is the current state of the file:
| 957299100: 4.5273333333e+03 3.9173333333e+03
| 957299400: 4.5936666667e+03 3.8680000000e+03
| 957299700: 4.5046666667e+03 3.8770000000e+03
| 957300000: 4.2830000000e+03 3.6453333333e+03
| 957300300: 3.6855983333e+03 3.6915000000e+03
| 957300600: 3.6855983333e+03 3.6915000000e+03
| 957300900: NaN NaN
| Note that the values don't match, this is because the linear interpolation
| is slightly different. But ds1 does not revert to NaN for the interval
| (957300300, 957300600).
|
| I don't this behavior is a bug, and it would be difficult to 'fix' given my
| understanding of the current architecture. But I think a user could be
| confused so perhaps it should be documented. If it is already document
| elsewhere, my apologies.
|
| Jake
|
| Jake Brutlag
| Network Analyst
| Microsoft WebTV
|
| --
| Unsubscribe mailto:rrd-developers-request at list.ee.ethz.ch?subject=unsubscribe
| Help mailto:rrd-developers-request at list.ee.ethz.ch?subject=help
| Archive http://www.ee.ethz.ch/~slist/rrd-developers
| WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
|
|
--
______ __ _
/_ __/_ / / (_) Oetiker, Timelord & SysMgr @ EE-Dept ETH-Zurich
/ // _ \/ _ \/ / TEL: +41(0)1-6325286 FAX:...1517 ICQ: 10419518
/_/ \.__/_.__/_/ oetiker at ee.ethz.ch http://ee-staff.ethz.ch/~oetiker
--
Unsubscribe mailto:rrd-developers-request at list.ee.ethz.ch?subject=unsubscribe
Help mailto:rrd-developers-request at list.ee.ethz.ch?subject=help
Archive http://www.ee.ethz.ch/~slist/rrd-developers
WebAdmin http://www.ee.ethz.ch/~slist/lsg2.cgi
More information about the rrd-developers
mailing list