Nagios Core 3.4.0 - performance data issues if contain apostrophes
shells at wannabepunk.de
shells at wannabepunk.de
Thu May 10 16:23:09 CEST 2012
Hi list,
i'm having an odd problem with the development machine I installed
Nagios Core 3.4.0 to.
It took me some time to make sure what the problem acutally is, but
there must have some change in the performance data handling.
For my setup:
It's two machines running CentOS 5.8 x64, the production-machine is
Nagios Core 3.3.1 and the development machine is Nagios Core 3.4.0,
both have the same versions of other packages both have PNP-0.6.17 and
both have nagios-plugins-1.4.15 - and both have the exact same config
(except the dev-machine doesn't send email to everyone).
So far about the basics.
I'm having the problem with the check_snmp and check_nt scripts, if
there is a label (on check_snmp) or a counter (on check_nt) with
blanks and it's therefor in apostrophes.
So that means, that Nagios is still checking the state of the checks,
but there is no performance data handled by PNP, as the input is
invalid.
Let me explain that with an example:
This checks the environment temperature sensor of APC UPS.
______
command_line $USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -o
.1.3.6.1.4.1.318.1.1.10.2.3.2.1.4.1 -w 29 -c 40 -l 'environment
Temperature' -u °C
______
as you can see the label "-l 'environment Temperature'" is set in apostrophes.
If that check is run by Nagios 3.3.1 it looks like follows in Service
State Information window:
_____
Status Information:SNMP OK - environment Temperature 24 °C
Performance Data:environment Temperature=24
_____
If that exact same check is run by Nagios 3.4.0 it looks like:
_____
Status Information:SNMP OK - 24 °C
Performance Data:=24
_____
So Nagios is still recognizing the value and handling the
notifications and escalations as it should, but "=24" is sent to PNP
as performance data, what clearly is invalid.
In production system (Nagios Core 3.3.1 - PNP-0.6.17) perfdata.log tells:
_____
Found Performance Data for APC_5000XL / Environment-Temperature
(environment Temperature=24)
_____
and is put into the graph just fine.
In development system (Nagios Core 3.4.0 - same PNP-version!) it is:
_____
Found Performance Data for APC_5000XL / Environment-Temperature (=24)
Invalid Perfdata detected
_____
So Nagios 3.4.0 is doing something to the performance data.
The only possibility to change that behavior back to normal is to
change the check-command to anything valid without apostrophes, like:
______
command_line $USER1$/check_snmp -H $HOSTADDRESS$ -C $ARG1$ -o
.1.3.6.1.4.1.318.1.1.10.2.3.2.1.4.1 -w 29 -c 40 -l Temperature -u °C
______
but that's not what I'd call "solution".
I downgraded the development system to 3.3.1 and instantly that checks
were reported correctly and graphs are drawn.
Back to 3.4.0 that stops immediately.
Does anyone else have registered such behaviour or can this be
confirmed as a bug?
Maybe I'm having blinders for changes that were clearly
communicated... or am missing some major point, so please tell me.
I would appreciate any help or confirmation that this is a bug and
will be fixed in further releases.
If you have any further queries, please do not hesitate to contact me.
cheers
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
More information about the Developers
mailing list