Zero value graph issue
Moderators: Developers, Moderators
Zero value graph issue
I'm new at cacti, but I believe I've followed all steps correctly, yet the custom graph I'm trying to make shows zero as its values all the time. I've read through all the FAQs I can find with no luck.
I'm trying to graph the total tape mounts for a storagetek SL-500 tape library. In know the OID of the library is .1.3.6.1.4.1.1211.1.15.3.12.12.0 I've created a data_template, host_template, and graph_template using values that mirror other objects that have an ever incrementing counter associated with them.
When I run poller.php from what I can tell, I get the correct output from it for that value:
10/22/2007 05:35:45 PM - POLLER: Poller[0] CACTI2RRD: /usr/bin/rrdtool update /var/www/cacti/rra/sl500_tape_library_1_sllibstatsnummounts_359.rrd --template SlLibStatsNumMounts 1193088943:104
The "104" value it returns is the correct value, as the library is new and has only mounted 104 tapes. I'm assuming that it's putting the correct value into the rrd database. The problem is, my graph values are blank.
I've imported a template from this site for HP printers to graph the total output of pages from a printer over its lifespan, and that works perfectly. I've gone through section by section to see what's different about my templates than it, and apart from the names of the variables, and OIDs, I can't find anything different. The permissions on the actual files are identical also.
Any ideas? I'm not sure how to debug this one. Any help would be appreciated.
I'm trying to graph the total tape mounts for a storagetek SL-500 tape library. In know the OID of the library is .1.3.6.1.4.1.1211.1.15.3.12.12.0 I've created a data_template, host_template, and graph_template using values that mirror other objects that have an ever incrementing counter associated with them.
When I run poller.php from what I can tell, I get the correct output from it for that value:
10/22/2007 05:35:45 PM - POLLER: Poller[0] CACTI2RRD: /usr/bin/rrdtool update /var/www/cacti/rra/sl500_tape_library_1_sllibstatsnummounts_359.rrd --template SlLibStatsNumMounts 1193088943:104
The "104" value it returns is the correct value, as the library is new and has only mounted 104 tapes. I'm assuming that it's putting the correct value into the rrd database. The problem is, my graph values are blank.
I've imported a template from this site for HP printers to graph the total output of pages from a printer over its lifespan, and that works perfectly. I've gone through section by section to see what's different about my templates than it, and apart from the names of the variables, and OIDs, I can't find anything different. The permissions on the actual files are identical also.
Any ideas? I'm not sure how to debug this one. Any help would be appreciated.
Read through this http://docs.cacti.net/node/283
I bet your data source max DS field is too small (Default is 100).
I bet your data source max DS field is too small (Default is 100).
| Scripts: Monitor processes | RFC1213 MIB | DOCSIS Stats | Dell PowerEdge | Speedfan | APC UPS | DOCSIS CMTS | 3ware | Motorola Canopy |
| Guides: Windows Install | [HOWTO] Debug Windows NTFS permission problems |
| Tools: Windows All-in-one Installer |
Zero value graph issue
Thanks for the pointer. I read through the document and I believe my settings are correct. I've pasted the rrdtool info summery below, but it looks like my .max value is 1000000 correct? The counter should only be outputting '150', which I believe it's showing in the last_ds. As I'm new at this, I'm just not sure what's wrong here. The graphs actually sometimes display something for this value now, as I've let it run for a week or so, but it appears to show some values in the millions.
I'm certain the SNMP query is working right, as it should now be showing a value of 150 (as that's the # of tape mounts we have currently). The last_ds. value below seems to confirm that. I've attached an image from the graph for reference too.
filename = "sl500_tape_library_1_sllibstatsnummounts_359.rrd"
rrd_version = "0003"
step = 300
last_update = 1193667007
ds[SlLibStatsNumMounts].type = "COUNTER"
ds[SlLibStatsNumMounts].minimal_heartbeat = 600
ds[SlLibStatsNumMounts].min = 0.0000000000e+00
ds[SlLibStatsNumMounts].max = 1.0000000000e+06
ds[SlLibStatsNumMounts].last_ds = "150"
ds[SlLibStatsNumMounts].value = 0.0000000000e+00
ds[SlLibStatsNumMounts].unknown_sec = 0
rra[0].cf = "AVERAGE"
rra[0].rows = 600
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 = 700
rra[1].pdp_per_row = 6
rra[1].xff = 5.0000000000e-01
rra[1].cdp_prep[0].value = 0.0000000000e+00
rra[1].cdp_prep[0].unknown_datapoints = 0
rra[2].cf = "AVERAGE"
rra[2].rows = 775
rra[2].pdp_per_row = 24
rra[2].xff = 5.0000000000e-01
rra[2].cdp_prep[0].value = 0.0000000000e+00
rra[2].cdp_prep[0].unknown_datapoints = 0
rra[3].cf = "AVERAGE"
rra[3].rows = 797
rra[3].pdp_per_row = 288
rra[3].xff = 5.0000000000e-01
rra[3].cdp_prep[0].value = 2.0000000000e-02
rra[3].cdp_prep[0].unknown_datapoints = 0
rra[4].cf = "MIN"
rra[4].rows = 600
rra[4].pdp_per_row = 1
rra[4].xff = 5.0000000000e-01
rra[4].cdp_prep[0].value = NaN
rra[4].cdp_prep[0].unknown_datapoints = 0
rra[5].cf = "MIN"
rra[5].rows = 700
rra[5].pdp_per_row = 6
rra[5].xff = 5.0000000000e-01
rra[5].cdp_prep[0].value = 0.0000000000e+00
rra[5].cdp_prep[0].unknown_datapoints = 0
rra[6].cf = "MIN"
rra[6].rows = 775
rra[6].pdp_per_row = 24
rra[6].xff = 5.0000000000e-01
rra[6].cdp_prep[0].value = 0.0000000000e+00
rra[6].cdp_prep[0].unknown_datapoints = 0
rra[7].cf = "MIN"
rra[7].rows = 797
rra[7].pdp_per_row = 288
rra[7].xff = 5.0000000000e-01
rra[7].cdp_prep[0].value = 0.0000000000e+00
rra[7].cdp_prep[0].unknown_datapoints = 0
rra[8].cf = "MAX"
rra[8].rows = 600
rra[8].pdp_per_row = 1
rra[8].xff = 5.0000000000e-01
rra[8].cdp_prep[0].value = NaN
rra[8].cdp_prep[0].unknown_datapoints = 0
rra[9].cf = "MAX"
rra[9].rows = 700
rra[9].pdp_per_row = 6
rra[9].xff = 5.0000000000e-01
rra[9].cdp_prep[0].value = 0.0000000000e+00
rra[9].cdp_prep[0].unknown_datapoints = 0
rra[10].cf = "MAX"
rra[10].rows = 775
rra[10].pdp_per_row = 24
rra[10].xff = 5.0000000000e-01
rra[10].cdp_prep[0].value = 0.0000000000e+00
rra[10].cdp_prep[0].unknown_datapoints = 0
rra[11].cf = "MAX"
rra[11].rows = 797
rra[11].pdp_per_row = 288
rra[11].xff = 5.0000000000e-01
rra[11].cdp_prep[0].value = 9.7666666667e-03
rra[11].cdp_prep[0].unknown_datapoints = 0
rra[12].cf = "LAST"
rra[12].rows = 600
rra[12].pdp_per_row = 1
rra[12].xff = 5.0000000000e-01
rra[12].cdp_prep[0].value = NaN
rra[12].cdp_prep[0].unknown_datapoints = 0
rra[13].cf = "LAST"
rra[13].rows = 700
rra[13].pdp_per_row = 6
rra[13].xff = 5.0000000000e-01
rra[13].cdp_prep[0].value = 0.0000000000e+00
rra[13].cdp_prep[0].unknown_datapoints = 0
rra[14].cf = "LAST"
rra[14].rows = 775
rra[14].pdp_per_row = 24
rra[14].xff = 5.0000000000e-01
rra[14].cdp_prep[0].value = 0.0000000000e+00
rra[14].cdp_prep[0].unknown_datapoints = 0
rra[15].cf = "LAST"
rra[15].rows = 797
rra[15].pdp_per_row = 288
rra[15].xff = 5.0000000000e-01
rra[15].cdp_prep[0].value = 0.0000000000e+00
rra[15].cdp_prep[0].unknown_datapoints = 0
I'm certain the SNMP query is working right, as it should now be showing a value of 150 (as that's the # of tape mounts we have currently). The last_ds. value below seems to confirm that. I've attached an image from the graph for reference too.
filename = "sl500_tape_library_1_sllibstatsnummounts_359.rrd"
rrd_version = "0003"
step = 300
last_update = 1193667007
ds[SlLibStatsNumMounts].type = "COUNTER"
ds[SlLibStatsNumMounts].minimal_heartbeat = 600
ds[SlLibStatsNumMounts].min = 0.0000000000e+00
ds[SlLibStatsNumMounts].max = 1.0000000000e+06
ds[SlLibStatsNumMounts].last_ds = "150"
ds[SlLibStatsNumMounts].value = 0.0000000000e+00
ds[SlLibStatsNumMounts].unknown_sec = 0
rra[0].cf = "AVERAGE"
rra[0].rows = 600
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 = 700
rra[1].pdp_per_row = 6
rra[1].xff = 5.0000000000e-01
rra[1].cdp_prep[0].value = 0.0000000000e+00
rra[1].cdp_prep[0].unknown_datapoints = 0
rra[2].cf = "AVERAGE"
rra[2].rows = 775
rra[2].pdp_per_row = 24
rra[2].xff = 5.0000000000e-01
rra[2].cdp_prep[0].value = 0.0000000000e+00
rra[2].cdp_prep[0].unknown_datapoints = 0
rra[3].cf = "AVERAGE"
rra[3].rows = 797
rra[3].pdp_per_row = 288
rra[3].xff = 5.0000000000e-01
rra[3].cdp_prep[0].value = 2.0000000000e-02
rra[3].cdp_prep[0].unknown_datapoints = 0
rra[4].cf = "MIN"
rra[4].rows = 600
rra[4].pdp_per_row = 1
rra[4].xff = 5.0000000000e-01
rra[4].cdp_prep[0].value = NaN
rra[4].cdp_prep[0].unknown_datapoints = 0
rra[5].cf = "MIN"
rra[5].rows = 700
rra[5].pdp_per_row = 6
rra[5].xff = 5.0000000000e-01
rra[5].cdp_prep[0].value = 0.0000000000e+00
rra[5].cdp_prep[0].unknown_datapoints = 0
rra[6].cf = "MIN"
rra[6].rows = 775
rra[6].pdp_per_row = 24
rra[6].xff = 5.0000000000e-01
rra[6].cdp_prep[0].value = 0.0000000000e+00
rra[6].cdp_prep[0].unknown_datapoints = 0
rra[7].cf = "MIN"
rra[7].rows = 797
rra[7].pdp_per_row = 288
rra[7].xff = 5.0000000000e-01
rra[7].cdp_prep[0].value = 0.0000000000e+00
rra[7].cdp_prep[0].unknown_datapoints = 0
rra[8].cf = "MAX"
rra[8].rows = 600
rra[8].pdp_per_row = 1
rra[8].xff = 5.0000000000e-01
rra[8].cdp_prep[0].value = NaN
rra[8].cdp_prep[0].unknown_datapoints = 0
rra[9].cf = "MAX"
rra[9].rows = 700
rra[9].pdp_per_row = 6
rra[9].xff = 5.0000000000e-01
rra[9].cdp_prep[0].value = 0.0000000000e+00
rra[9].cdp_prep[0].unknown_datapoints = 0
rra[10].cf = "MAX"
rra[10].rows = 775
rra[10].pdp_per_row = 24
rra[10].xff = 5.0000000000e-01
rra[10].cdp_prep[0].value = 0.0000000000e+00
rra[10].cdp_prep[0].unknown_datapoints = 0
rra[11].cf = "MAX"
rra[11].rows = 797
rra[11].pdp_per_row = 288
rra[11].xff = 5.0000000000e-01
rra[11].cdp_prep[0].value = 9.7666666667e-03
rra[11].cdp_prep[0].unknown_datapoints = 0
rra[12].cf = "LAST"
rra[12].rows = 600
rra[12].pdp_per_row = 1
rra[12].xff = 5.0000000000e-01
rra[12].cdp_prep[0].value = NaN
rra[12].cdp_prep[0].unknown_datapoints = 0
rra[13].cf = "LAST"
rra[13].rows = 700
rra[13].pdp_per_row = 6
rra[13].xff = 5.0000000000e-01
rra[13].cdp_prep[0].value = 0.0000000000e+00
rra[13].cdp_prep[0].unknown_datapoints = 0
rra[14].cf = "LAST"
rra[14].rows = 775
rra[14].pdp_per_row = 24
rra[14].xff = 5.0000000000e-01
rra[14].cdp_prep[0].value = 0.0000000000e+00
rra[14].cdp_prep[0].unknown_datapoints = 0
rra[15].cf = "LAST"
rra[15].rows = 797
rra[15].pdp_per_row = 288
rra[15].xff = 5.0000000000e-01
rra[15].cdp_prep[0].value = 0.0000000000e+00
rra[15].cdp_prep[0].unknown_datapoints = 0
- Attachments
-
- Graph that isn't displaying correctly.
- graph_image.php.png (20.52 KiB) Viewed 2657 times
- gandalf
- Developer
- Posts: 22383
- Joined: Thu Dec 02, 2004 2:46 am
- Location: Muenster, Germany
- Contact:
Re: Zero value graph issue
It's milli (1/1000), not million. See sticky post in this forum. Please post details of the output of your script/SNMP request. You chose COUNTER as the data source type. There's a chance that GAUGE would be correct.stevenma wrote:... but it appears to show some values in the millions.
Reinhard
Re: Zero value graph issue
Sorry, didn't notice the "m" designation. I've switched it back to GAUGE as a test. Prior to switching it back to a GAUGE type, I did some reviewing of the actual rrd file, and noticed the following:gandalf wrote:It's milli (1/1000), not million. See sticky post in this forum. Please post details of the output of your script/SNMP request. You chose COUNTER as the data source type. There's a chance that GAUGE would be correct.stevenma wrote:... but it appears to show some values in the millions.
Reinhard
ds[SlLibStatsNumMounts].type = "COUNTER"
ds[SlLibStatsNumMounts].minimal_heartbeat = 600
ds[SlLibStatsNumMounts].min = 0.0000000000e+00
ds[SlLibStatsNumMounts].max = 1.0000000000e+04
ds[SlLibStatsNumMounts].last_ds = "152"
ds[SlLibStatsNumMounts].value = 0.0000000000e+00
ds[SlLibStatsNumMounts].unknown_sec = 0
No matter how many times I look at this output (via rrdtool info) the ".value" output is always 0.0000000000e+00. The last_ds is correct in that we have 152 tape mounts. What I'm not sure about is why the .value isn't showing that. Not sure if that's making progress on my issue or not, but when I look at other rrd files, their values are something other than 0.0000000000e+00
Thanks for your help on this!
- gandalf
- Developer
- Posts: 22383
- Joined: Thu Dec 02, 2004 2:46 am
- Location: Muenster, Germany
- Contact:
Oh, please not that fast. Before switching to GAUGE, you should investigate if this is correct. It was only an ssumption! Please have a read at the first link of my signature. There are chapters on creating own Scripts or OID Data Templates. Please tell us, how you fetch that data. Is it SNMP or is it a script? And, last, changing the Data Template will NOT change any existing rrd file. Use rrdtool tune to cope with it
Reinhard
Reinhard
Thanks, I'd figured out shortly after your post that changing to GAUGE didn't actually do anything to an existing rrd file.gandalf wrote:Oh, please not that fast. Before switching to GAUGE, you should investigate if this is correct. It was only an ssumption! Please have a read at the first link of my signature. There are chapters on creating own Scripts or OID Data Templates. Please tell us, how you fetch that data. Is it SNMP or is it a script? And, last, changing the Data Template will NOT change any existing rrd file. Use rrdtool tune to cope with it
Reinhard
I've actually done this configuration using the section of your document using the OID Data Template. I'm doing as simple a fetch as I think there can be, it's referenced in my first post on this thread, but the short version is, I'm using SNMP to query an OID. That OID info is in a basic data template. I've gone back and forth comparing the data and graph templates to working ones for hours and i can't see any difference between mine and the "working" ones. I'm looking to make a very simple "first graph" here that just shows the number of tape mounts a tape library has. It'll be an ever incrementing value. Right now we're at 152, but it increases every hour. You can see the rrd database does get the value, but my disconnect is why it's not graphing it, and why the ".value" section shows 0.0000000000e+00.
Here's the output for an snmpget for it:gandalf wrote:Please post an snmpwalk's output for that very OID. If everything's going fine, it should either tell you to be a COUNTER32 (that's obvioulsy a COUNTER data source) or else it's a GAUGE (e.g. for GAUGE, STRING and stuff)
Reinhard
SNMPv2-SMI::enterprises.1211.1.15.3.12.12.0 = INTEGER: 152
Perfect, that did it! I ended up removing the old rrd and starting over since it's a new system and historical data wasn't important. Now I have a working "first" graph. I appreciate your help!gandalf wrote:I suppose that GAUGE woul dbe fine, then. Change the Data Template accordingly and all existing rrd files as well. Historical data will be wrong, though
Reinhard
- Attachments
-
- graph_image.php.png (16.75 KiB) Viewed 2529 times
Who is online
Users browsing this forum: No registered users and 3 guests