Change in results from check_snmp
Just upgraded to version 3.7.2 (I think I was at 3.5.x before). I just noticed that some of my services are no longer being graphed by Opsview. I pulled an old version of check_snmp from my old Nagios system and compared the rults with the new one in Opsview 3.7.2, this explains why I don't get any data to graph. Has anyone else noticed this?
This is using the old check_snmp program:
nagios:~ crpeck$ ./check_snmp -v -P 2c -H mail1.wm.edu -m /usr/local/nagios/snmp/all/MIRAPOINT-MASTER.MIB -C xxxxxxc -o statIdleCPU.0
/usr/sfw/bin/snmpget -t 1 -r 5 -m /usr/local/nagios/snmp/all/MIRAPOINT-MASTER.MIB -v 2c -c WMpublic mail1.wm.edu:161 statIdleCPU.0
MIRAPOINT-MASTER-MIB::statIdleCPU.0 = STRING: "94.55"
SNMP OK - "94.55" | MIRAPOINT-MASTER-MIB::statIdleCPU.0="94.55"
This is the current check_snmp program (no data after the '|' to pass to put in rrd):
nagios:~ crpeck$ /usr/local/nagios/libexec/check_snmp -v -P 2c -H mail1.wm.edu -m /usr/local/nagios/snmp/all/MIRAPOINT-MASTER.MIB -C xxxxxx -o statIdleCPU.0
/usr/sfw/bin/snmpget -t 1 -r 5 -m /usr/local/nagios/snmp/all/MIRAPOINT-MASTER.MIB -v 2c [authpriv] mail1.wm.edu:161 statIdleCPU.0
MIRAPOINT-MASTER-MIB::statIdleCPU.0 = STRING: "61.78"
SNMP OK - "61.78" |


I think check_snmp is rightly not returning performance data this because it is string data, not numeric data. It just so happens that the string contains number information.
Is there an alternative OID which does return the numeric information?
I'm not sure what the fix should be. Parsing the string for numerical-ness seems silly (it could be temporarily numerical). Maybe a "force performance data from string" flag.