I am using Nagios to monitor a host. If the host looses connectivity, I want Nagios to execute an event handler.
The host definition contains a defined event_handler directive. The host inherits from generic-host and; therefore, event_handler_enabled is 1. In my main configuration file event handling is enabled. The associated command configuration file has also been defined.
While troubleshooting I tried the following as root:
./test-handler [and my args here of course]
The output is correct as user nagios. However, the nagios binary that runs under user nagios will not execute the script. Here is a bit of my nagios.log file:
 HOST ALERT: vXP;DOWN;SOFT;2;CRITICAL - Host Unreachable (192.168.0.21)  HOST EVENT HANDLER: vXP;(null);(null);(null);test-handler!$HOSTADDRESS$  EXTERNAL COMMAND: SCHEDULE_FORCED_HOST_CHECK;vXP;1273208211  HOST ALERT: vXP;UP;SOFT;3;PING OK - Packet loss = 0%, RTA = 35.37 ms  HOST EVENT HANDLER: vXP;(null);(null);(null);test-handler!$HOSTADDRESS$
According to the output, nagios appears to be running my command; however, based on the output it is actually doing nothing at all. I know that whatever I'm missing is probably very simple (and knowing me; it's right under my nose), but I'm at a loss.
asked 07 May '10, 05:08
Is your script executable?
answered 07 May '10, 06:02
Best bet is give it /bin/bash test-handler instead of letting it find the interpreter.
answered 01 Jun '10, 14:05
Shouldn't that (null);(null);(null); in the log be something like "CRITICAL;HARD;1" -- without those inputs your script won't process anything. Not sure what is preventing those status variables from getting passed/populated.
answered 23 Jul '10, 14:21
Was your issue ever solved? I have a similar issue with Nagios. Here is my command definition:
and service definition
/bin/bash /usr/local/nagios/libexec/nagios-msg-broker.sh runs fine manually.
Service defined above can’t run it though. Here are the ownership/permissions of the script:
perfserver-10:/usr/local/nagios/libexec$ ls -l nagios-msg-broker.sh -rwxrwxrwx 1 nagios nagcmd 149 Mar 30 10:04 nagios-msg-broker.sh
answered 30 Mar '12, 13:57