[rrd-users] Please Help
Emily Chouinard
cousin17 at msu.edu
Wed Jun 18 15:41:19 CEST 2008
I think there may be something wrong my rrdtool create files, I'm not
sure what all the numbers and stuff mean and how to create them, I just
used an example for the create function and didn't make them my own.
Emily Chouinard wrote:
> I get this error
> rrdtool fetch usr.rrd LAST
> ERROR: the RRD does not contain an RRA matching the chosen CF
> and my rrdtool info usr.rrd looks the same even though I let the
> program run for quite awhile, so my update function not be in the if
> statement, is there something wrong with its placement?
>
>
> Emily Chouinard wrote:
>> Well there is nothing in those files except crazy symbols so I think
>> there is something wrong with my update function, I wasn't sure how
>> to create it,
>>
>> rrdtool.update('idle.rrd','N:112431249')
>> rrdtool.update('sys.rrd','N:108704')
>> rrdtool.update('usr.rrd','N:259845')
>>
>> which not in python would look like rrdtool update usr.rrd N:112431249
>> and I'm not sure exactly what was suppose to go in this command so
>> I'm sure its wrong but I don't know how to fix it.
>>
>>
>> Ruttenberg, Tanya wrote:
>>
>>> A couple of things look odd to me, but it could just be because you ran
>>> your update only once. You need to do it a few times in order to see
>>> data in your graph. RRDtool needs more than 1 datapoint to calculate a
>>> rate.
>>>
>>> Try a few more rrdtool commands on the command line to see whether
>>> there
>>> is something in your rrdfile. Rrdtool fetch is nice and simple. Try
>>> something like:
>>>
>>> rrdtool fetch rrdfile.rrd LAST
>>>
>>> If you see a lot of numbers in there -- as opposed to a lot of NaN's
>>> then perhaps it is your graph.
>>>
>>> -----Original Message-----
>>> From: Emily Chouinard [mailto:cousin17 at msu.edu] Sent: Wednesday,
>>> June 18, 2008 9:04 AM
>>> To: Ruttenberg, Tanya
>>> Cc: rrd-users at lists.oetiker.ch
>>> Subject: Re: [rrd-users] Please Help
>>>
>>> Ruttenberg, Tanya wrote:
>>>
>>>> What do you see when you do "rrdtool info filename"? You should
>>>> see some indication that data has gone into it, under last_ds, min,
>>>> max, or value. Like this:
>>>>
>>>> ds[ifhcinoctets].type = "COUNTER"
>>>> ds[ifhcinoctets].minimal_heartbeat = 1800 =>ds[ifhcinoctets].min =
>>>> 0.0000000000e+00 =>ds[ifhcinoctets].max = 1.2500000000e+08
>>>> =>ds[ifhcinoctets].last_ds = "3213871804"
>>>> =>ds[ifhcinoctets].value = 8.3618110390e+02
>>>> ds[ifhcinoctets].unknown_sec = 0 ds[ifhcoutoctets].type = "COUNTER"
>>>> ds[ifhcoutoctets].minimal_heartbeat = 1800 ds[ifhcoutoctets].min =
>>>> 0.0000000000e+00 ds[ifhcoutoctets].max = 1.2500000000e+08
>>>> ds[ifhcoutoctets].last_ds = "417872513"
>>>> ds[ifhcoutoctets].value = 9.3979997545e+01
>>>> ds[ifhcoutoctets].unknown_sec = 0
>>>>
>>>> I suggest you download and use drraw to take a look at what is in that
>>>>
>>>
>>>> file. This eliminates possible user error in your graph creation
>>>> AND it will give you the exact rrdfile graph syntax you can use to
>>>> create the graph.
>>>>
>>>> Good luck.
>>>>
>>>> Tanya Ruttenberg
>>>> SMC/OND Administrator for DNE
>>>> 410-965-9605
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: rrd-users-bounces at lists.oetiker.ch
>>>> [mailto:rrd-users-bounces at lists.oetiker.ch] On Behalf Of Emily
>>>> Chouinard
>>>> Sent: Wednesday, June 18, 2008 8:52 AM
>>>> To: rrd-users at lists.oetiker.ch
>>>> Subject: [rrd-users] Please Help
>>>>
>>>> I've spent a whole day looking at my code and trying to figure out why
>>>>
>>>
>>>> nothing is being graphed but I can't seem to figure out it, will
>>>> someone please help me? My code is below and it seems to work, but
>>>> I don't know if its the update or graph function thats not working,
>>>> when
>>>>
>>>
>>>> I ls -l all my rrd files and my png seem updated but when I display my
>>>>
>>>
>>>> png it shows the legend and stuff but no values are actually
>>>> graphed. So any help would be really appreciated.
>>>> Thanks,
>>>> Emily
>>>> import rrdtool
>>>> import os
>>>> import time
>>>>
>>>>
>>>> interval = 10
>>>> interval = str(interval)
>>>> interval_mins = float(interval) / 60
>>>> heartbeat = str(int(interval) * 2)
>>>> cur_date = time.strftime('%m/%d/%Y %H\:%M\:%S', time.localtime())
>>>>
>>>> rrdtool.create('usr.rrd',
>>>> 'DS:usr_info:COUNTER:%s:U:U' % heartbeat,
>>>> 'RRA:AVERAGE:0.5:1:%s' % int(4000 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(30 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(120 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(1440 / interval_mins))
>>>>
>>>> rrdtool.create('sys.rrd',
>>>> 'DS:sys_info:COUNTER:%s:U:U' % heartbeat,
>>>> 'RRA:AVERAGE:0.5:1:%s' % int(4000 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(30 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(120 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(1440 / interval_mins))
>>>> rrdtool.create('idle.rrd',
>>>> 'DS:idle_info:COUNTER:%s:U:U' % heartbeat,
>>>> 'RRA:AVERAGE:0.5:1:%s' % int(4000 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(30 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(120 / interval_mins),
>>>> 'RRA:AVERAGE:0.5:%d:800' % int(1440 / interval_mins))
>>>>
>>>> while True:
>>>> infile= open('/proc/stat', 'r')
>>>> #for x in range(0,1): #Reads first line only
>>>> line = infile.readline()
>>>> if line.startswith('cpu'): #Check to make sure in 1st line
>>>> info = line.split() #Returns a list of the words in the string
>>>> usr_info = info[1] #Index the three aspects of CPU Usuage
>>>> sys_info = info[3]
>>>> idle_info = info[4]
>>>> #str() because Python needs to have a string
>>>> print usr_info, sys_info, idle_info #Print out so you can see
>>>>
>>>
>>>> what's happening
>>>> rrdtool.update('idle.rrd','N:112431249')
>>>> rrdtool.update('sys.rrd','N:108704')
>>>> rrdtool.update('usr.rrd','N:259845')
>>>> rrdtool.graph('example.png',
>>>> 'DEF:usr_info=usr.rrd:usr_info:AVERAGE', #Defines
>>>> all three aspects of the /proc/stat file
>>>> 'AREA:usr_info#0000FF:"User CPU usuage"',
>>>> 'DEF:sys_info=sys.rrd:sys_info:AVERAGE:step=800',
>>>> 'AREA:sys_info#00FF00:"System CPU usuage":STACK',
>>>> 'DEF:idle_info=idle.rrd:idle_info:AVERAGE:step=800',
>>>> #Different Labels for each of the three ascp
>>>> 'AREA:idle_info#FF0000:"Idle CPU usuage":STACK',
>>>> '--start','now-%s'%(30*60),
>>>> '--end','now',
>>>> '--width','500',
>>>> '--height','250',
>>>> '--base', '1000',
>>>> '--vertical-label','CPU Usuage',
>>>> '--title', 'EXAMPLE',
>>>> 'COMMENT:' + cur_date + '') infile.close()
>>>> time.sleep(10)
>>>> _______________________________________________
>>>> rrd-users mailing list
>>>> rrd-users at lists.oetiker.ch
>>>> https://lists.oetiker.ch/cgi-bin/listinfo/rrd-users
>>>>
>>>>
>>>>
>>> This is what I see, but I'm not sure what it all means, I am very
>>> new to
>>> rrdtool
>>>
>>> filename = "usr.rrd"
>>> rrd_version = "0003"
>>> step = 300
>>> last_update = 1213793679
>>> ds[usr_info].type = "COUNTER"
>>> ds[usr_info].minimal_heartbeat = 20
>>> ds[usr_info].min = NaN
>>> ds[usr_info].max = NaN
>>> ds[usr_info].last_ds = "259845"
>>> ds[usr_info].value = 0.0000000000e+00
>>> ds[usr_info].unknown_sec = 0
>>> rra[0].cf = "AVERAGE"
>>> rra[0].rows = 24000
>>> 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[1].cf = "AVERAGE"
>>> rra[1].rows = 800
>>> rra[1].pdp_per_row = 180
>>> rra[1].xff = 5.0000000000e-01
>>> rra[1].cdp_prep[0].value = 0.0000000000e+00
>>> rra[1].cdp_prep[0].unknown_datapoints = 117 rra[2].cf = "AVERAGE"
>>> rra[2].rows = 800
>>> rra[2].pdp_per_row = 720
>>> rra[2].xff = 5.0000000000e-01
>>> rra[2].cdp_prep[0].value = 0.0000000000e+00
>>> rra[2].cdp_prep[0].unknown_datapoints = 297 rra[3].cf = "AVERAGE"
>>> rra[3].rows = 800
>>> rra[3].pdp_per_row = 8640
>>> rra[3].xff = 5.0000000000e-01
>>> rra[3].cdp_prep[0].value = 0.0000000000e+00
>>> rra[3].cdp_prep[0].unknown_datapoints = 2457
>>>
>>>
>>>
>>
>> _______________________________________________
>> 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