I need service notifications while host is down

As per documentation:
“Typically this is done by pinging the host and seeing if any response is received. If the host check commmand returns a non-OK state, Nagios assumes that there is a problem with the host. In this situation Nagios will “silence” all potential alerts for services running on the host and just notify the appropriate contacts that the host is down or unreachable.”

I need to receive notifications of service problems even if the host is considered down. I specifically need it to run the event handlers for those services despite the host being down. Is there anyway I can change this default behavior, and at the very least get nagios to run the event handlers for the affected services?

Thanks…

sure you can, you have the source code :stuck_out_tongue:

But i don’t know how difficult this can be… :slight_smile:
Anyway i don’t think there’s a way to force the standard nagios to send notifications for a service on a host which is down.

Luca
Edited Thu May 26 2005, 11:27PM ]

From looking at my logs (for ver. 2) Nagios only supresses the notifications. The checks still get done, they just have a HARD state type on the first go as the host is down. This means that the event handlers should run. Also from the docs on event handling it seems that the handlers will still run.

The only thing that changes is that the notifications are suppressed. I think this is a good thing as the more notifications are sent out the less likely they will be paid attention to. The admins that I work with understand that if the host is down, then the services it runs are also down, thus further notifications are not needed.

You would think that the event handlers would run regardless of whether or not notifications take place. However, they do not. The only time the event handlers run for me is when it sends notifications. Perhaps this should be considered a bug.
Edited Fri May 27 2005, 03:55PM ]

Go down on the source, and if you just want a quick and dirty sollution, just leave the check_command blank, and use a ping service test to see if it’s up?

From the docs:

When Are Event Handler Commands Executed?

Service and host event handler commands are executed when a service or host:

* is in a "soft" error state
* initially goes into a "hard" error state
* recovers from a "soft" or "hard" error state