Service Escalation - recovery information for all and not on


Hello, I am brand new to these forums, but couldn’t find this question answered anywhere while browsing them.

The issue I have is that I wish to get recovery notifications for all notification groups in a service check, even if the service has been escalated. Is this possible? As I understand it, only the last one in the escalation flow will get a recovery notice.

The reason for this is that most of the time, we first want the administrative groups to get a notification that the system is down, mainly to ensure they are aware that their system has had a problem. Naturally we don’t want them to get more than one mail about this. After that, we want to escalate the problem to our company’s NOC, which we do through SNMP traps to their Alarm collecting system, these traps should be updated every instance of the check.

When the service returns to an OK state, we would like a recovery notification both for the SNMP trap group and the support groups that previously got notified via mail about the service having a critical state.
We are running Nagios 3.01

Like this, (this service is not template based because it was imported from an older version of Nagios):

define service{
use generic-service ; Name of service template to use

    host_name                       hostname
    service_description             HTTP Check for Something Something
    is_volatile                     0
    check_period                    24x7
    max_check_attempts              3
    normal_check_interval           5
    retry_check_interval            1
    contact_groups                  first-admins,other-admins,more-admins,snmptrapsystem_major
    notification_interval           5
    notification_period             24x7
    notification_options            c,r
    check_command                   check_whatever_http!follow!"search string"!7781!/urlandsuch

Service escalation:

define serviceescalation{
host_name hostname
service_description HTTP Check for Something Something
first_notification 2
last_notification 0
notification_interval 5
contact_groups snmptrapsystem_major
escalation_options c,r

Is it possible to do this in a convenient way? This would be implemented on a large number of service checks, and as little manual configuration as possible is preferrable. Thanks in advance.


I might as well reply to this myself since I found out the solution. It’s easier than I thought, you just have to make sure to only escalate the critical state, then the recovery state will not be escalated and everyone who received the first notification will also get a recovery message.