[rrd-users] WG: Beginner: please help ....

Adrian Koepe adrian.koepe.ex at development.easycredit.de
Tue Apr 8 12:00:57 CEST 2008


Hi Martin,

Regarding our requirements i have to read some messages each minute (with
help from mbeans), process them and get some values, which have to save them
in the rrd file. Also i have to display them in min, hourly, dayly, monthly,
yearly resolution. That's why i've used at the beginning the step 60 with
AVERAGE for 1 (PDPs) with 60 (CPDs) for 1 hour with 1 minute resolution.
So at the beginning i have tried the following:

create "test.rrd" --start START_TIME --step 60 DS:test:GAUGE:120:0.0:U
RRA:AVERAGE:0.5:1:60   // 1 hour resolution for each min
RRA:AVERAGE:0.5:60:24  // 1 day resolution for each hour
RRA:AVERAGE:0.5:24:7   // 1 week resolution for each day
RRA:AVERAGE:0.5:7:30   // 1 month resolution for each week
RRA:AVERAGE:0.5:30:12  // 1 year resolution for each month
rrdtool graph "test.gif" --start START_TIME --end END_TIME
DEF:myTest=test.rrd:test:AVERAGE

Where:
* END_TIME = START_TIME + 60*60 // for 1 hour 
* both START_TIME and END_TIME are UTC dates, computed with the rrdtool.

Doing this i've observed that it dosen't match with the expected values and
so i've started t try with step of 5 min, 12 PDPs and 24 CDPs ...

Thank you very much and hope i didn't bothered you too much.
Have a nice day,
Adrian Koepe.


-----Ursprüngliche Nachricht-----
Von: Boer, Martin [mailto:martin.boer at atosorigin.com] 
Gesendet: Dienstag, 8. April 2008 11:01
An: Adrian Koepe; rrd-users at lists.oetiker.ch
Betreff: RE: [rrd-users] WG: Beginner: please help ....



 Adrian,

First of all I would ask you to use your rrdfiles at 'complete' 5 minute
intervals, so use 1207555200 instead of 1207636256.
If you don't, rrdtool might come up with results you don't expect.



If you use 'rrdtool info test.rrd' your file looks like this (just after the
create):

filename = "test.rrd"
rrd_version = "0001"
step = 300
last_update = 1207636256
ds[test].type = "GAUGE"
ds[test].minimal_heartbeat = 600
ds[test].min = 0.0000000000e+00
ds[test].max = NaN
ds[test].last_ds = "UNKN"
ds[test].value = 0.0000000000e+00
ds[test].unknown_sec = 56
rra[0].cf = "AVERAGE"
rra[0].rows = 24
rra[0].pdp_per_row = 12
rra[0].xff = 5.0000000000e-01
rra[0].cdp_prep[0].value = NaN
rra[0].cdp_prep[0].unknown_datapoints = 6

I don't really understand why you put in the 12 and 24, so I just paste one
of mine rrdfiles which has 3 RRA's so I hope this helps you to find 
What goes wrong with yours.
I update my rrdfiles once per every 5 minutes.
RRA[0] keeps the data in 5 minute intervals and it capable of holding 300 of
those points. This gives me very detailed information over the last 24 hours
(24*60 = 1440, 300*5 = 1500)
RRA[1] keeps the data in 15 minute intervals (step=300, pdp_per_row=3) and
holds 3500 points. This means a total of over a month of quite detailed
information.
RRA[2] just keeps data in a one-per-day value for a year.

rrd_version = "0001"
step = 300
last_update = 1205760907
ds[status].type = "GAUGE"
ds[status].minimal_heartbeat = 300
ds[status].min = 0.0000000000e+00
ds[status].max = 1.0000000000e+01
ds[status].last_ds = "UNKN"
ds[status].value = 0.0000000000e+00
ds[status].unknown_sec = 0
rra[0].cf = "LAST"
rra[0].rows = 300
rra[0].pdp_per_row = 1
rra[0].xff = 5.0000000000e-01
rra[0].cdp_prep[0].value = NaN
rra[0].cdp_prep[0].unknown_datapoints = 0
rra[0].cdp_prep[1].value = NaN
rra[0].cdp_prep[1].unknown_datapoints = 0
rra[1].cf = "LAST"
rra[1].rows = 3500
rra[1].pdp_per_row = 3
rra[1].xff = 5.0000000000e-01
rra[1].cdp_prep[0].value = 0.0000000000e+00
rra[1].cdp_prep[0].unknown_datapoints = 0
rra[1].cdp_prep[1].value = 0.0000000000e+00
rra[1].cdp_prep[1].unknown_datapoints = 0
rra[2].cf = "LAST"
rra[2].rows = 365
rra[2].pdp_per_row = 288
rra[2].xff = 5.0000000000e-01
rra[2].cdp_prep[0].value = 0.0000000000e+00
rra[2].cdp_prep[0].unknown_datapoints = 6
rra[2].cdp_prep[1].value = 0.0000000000e+00
rra[2].cdp_prep[1].unknown_datapoints = 6

I hope this helps.

Regards,
Martin


-----Original Message-----
From: rrd-users-bounces at lists.oetiker.ch
[mailto:rrd-users-bounces at lists.oetiker.ch] On Behalf Of Adrian Koepe
Sent: dinsdag 8 april 2008 8:56
To: rrd-users at lists.oetiker.ch
Subject: [rrd-users] WG: Beginner: please help ....

Hi Martin,

First thank you for confirming me the missing specification of the TOTAL
function :)) I thought that i didn't search enougth the net :)

Before i deploy my application i have tried to test first and see how it
works if i updated the rrd in the future through a loop where updateTime =
startTime + step. Anyway i do have some problems understanding also the
function AVERAGE since for the following example the function AVERAGE
return/compute something different than expected:

create "test.rrd" --start 1207636256 --step 300 DS:test:GAUGE:600:0.0:U
RRA:AVERAGE:0.5:12:24 rrdtool update test.rrd 1207636556:40 rrdtool update
test.rrd 1207636856:20 rrdtool update test.rrd 1207637156:60 rrdtool update
test.rrd 1207637456:0 rrdtool update test.rrd 1207637756:0 rrdtool update
test.rrd 1207638056:10 rrdtool update test.rrd 1207638356:0 rrdtool update
test.rrd 1207638656:30 rrdtool update test.rrd 1207638956:0 rrdtool update
test.rrd 1207639256:0 rrdtool update test.rrd 1207639556:80 rrdtool update
test.rrd 1207639856:0 rrdtool graph "test.gif" --start 1207636256 --end
1207639856 DEF:myTest=test.rrd:test:AVERAGE

It meas i have to update each 5 min the rrd and for 12 values i get one of
the 24 sample in the archive. That means if i write 12 values having the sum
240, then i have to get 20 for the first of the 24 values. Is wrong or
correct? Is a possibility to wrote the 12 values in the rrd and to get for
the 1st of the 24 samples the sum of those 12 values? If yes how? Could you
sent me an example? Thank you again.

Regards,
Adrian Koepe.





-----Ursprüngliche Nachricht-----
Von: Boer, Martin [mailto:martin.boer at atosorigin.com]
Gesendet: Dienstag, 8. April 2008 08:27
An: Adrian Koepe; rrd-users at lists.oetiker.ch
Betreff: RE: [rrd-users] Beginner: please help ....


Hi Adrian,

My rrdtool has lots of problems with the Consolidation Function TOTAL and
with the use of the word NOW in the update statemet and I can't find any
comment on either on the webpage of www.rrdtool.org so I'm kinda struggling
here.

My -guess- is that you're updating in the future (NOW+120) and fetching from
the past NOW-24*60

Regards,
Martin


-----Original Message-----
From: rrd-users-bounces at lists.oetiker.ch
[mailto:rrd-users-bounces at lists.oetiker.ch] On Behalf Of Adrian Koepe
Sent: maandag 7 april 2008 16:34
To: rrd-users at lists.oetiker.ch
Subject: [rrd-users] Beginner: please help ....

hello,

i'm new to rrdtool - i know that my question has been put in the past at
least for several times and yes i read the tutorial/man pages - and i try to
do the following:
- read each min / 5th min a value, store it in the rrd and get the sum of
all these values for 1 hour.
- create the daily graph (in hour step), the weekly graph (day step), the
monthly graph (week step) and the yearly graph (month step)
- so based on the tutorial i've created the following files and results:

create "test.rrd" --start NOW --step 60 DS:test:GAUGE:120:0.0:U
RRA:TOTAL:0.5:60:24 rrdtool update test.rrd NOW+60:10 NOW+120:0 NOW+180:20
... rrdtool fetch test.rrd TOTAL --start NOW-24*60 --end NOW

the result is NaN for all 24 hours. Why? What did i misunderstood?!

Regards,
Adrian.





_______________________________________________
rrd-users mailing list
rrd-users at lists.oetiker.ch
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users



_______________________________________________
rrd-users mailing list
rrd-users at lists.oetiker.ch
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users





More information about the rrd-users mailing list