nagios (Última notificação: N / A (notificação 0))

1

Eu não consigo descobrir, mas por alguma razão o Nagios não me envia um alerta sobre alguns dos serviços que eu monitorei, eu queria saber se alguém pode me ajudar um pouco.

este é o serviço

define service {
    hostgroup_name          nrpe-disk
    service_description     disk
    use             alarm,check
    check_command           check_nrpe1!check_disk
    register            1
    }

aqui está o meu comando

define command {
       command_name                         check_nrpe1
       command_line                         $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}

aqui é o modelo de serviço

define service {
       name                                 alarm
       notification_interval                0
       notification_period                  247
       notification_options                 w,u,r,c,f,s
       notifications_enabled                1
       contact_groups                       staff
       register                         0

}
define command {
       command_name                         notify-host-by-email
       command_line                         /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$
}   

define command {
       command_name                         notify-host-by-pager
       command_line                         /usr/bin/printf "%b" "Notification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$" | /usr/bin/mail $CONTACTPAGER$
}   

define command {
       command_name                         notify-service-by-email
       command_line                         /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$
}   

define command {
       command_name                         notify-service-by-pager
       command_line                         /usr/bin/printf "%b" "Notification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /usr/bin/mail $CONTACTPAGER$
}   
define contactgroup {
    contactgroup_name                   staff
    alias                               XXXXXXXX
    members                             XXXXXXXX XXXXXXXX
    }   
define contact {
    contact_name                        XXXXXXX XXXXXX
    alias                               XXXXXXXXX
    host_notifications_enabled          1
    service_notifications_enabled       1
    host_notification_period            247
    service_notification_period         247
    host_notification_options           d,u,r,f,s
    service_notification_options        w,u,c,r,f,s
    host_notification_commands          notify-host-by-email,notify-host-by-pager
    service_notification_commands       notify-service-by-email,notify-service-by-pager
    email                               [email protected]
    pager                               [email protected]
    }
    
por alexus 20.09.2009 / 01:06

6 respostas

0

Não vejo isso mencionado em sua pergunta ou em nenhuma das respostas, mas você verificou o arquivo nagios.cfg da configuração enable_notifications ? Está definido para 0 ou 1 ?

Além disso, isso ocorre apenas em uma determinada notificação de serviço ou afeta todas as notificações? Se é tudo, eu suspeitaria que enable_notifications está definido como 0 no arquivo nagios.cfg. Se assim for, tente alterá-lo para 1 e reiniciar o Nagios.

    
por 08.10.2009 / 21:08
4

O log de depuração do nagios me ajudou a diagnosticar um problema semelhante. Foi perto do final do meu nagios.cfg

debug_level=32
debug_file=/var/log/nagios3/nagios.debug
debug_verbosity=2

reinicie os nagios e, em seguida, siga o arquivo nagios.debug ; você mostrará algo como:

[1416254305.106042] [032.0] [pid=928] ** Service Notification Attempt ** Host: 'myhost', Service: 'myservice', Type: 0, Options: 0, Current State: 2, Last Notification: Wed Dec 31 19:00:00 1969
[1416254305.106106] [032.0] [pid=928] Notification viability test passed.
[1416254305.106114] [032.1] [pid=928] Current notification number: 1 (incremented)
[1416254305.106120] [032.2] [pid=928] Creating list of contacts to be notified.
[1416254305.106137] [032.1] [pid=928] Service notification will NOT be escalated.
[1416254305.106174] [032.1] [pid=928] Adding normal contacts for service to notification list.
[1416254305.106185] [032.2] [pid=928] Adding contact 'mycontact' to notification list.
[1416254305.106219] [032.2] [pid=928] ** Attempting to notifying contact 'mycontact'...
[1416254305.106449] [032.2] [pid=928] ** Checking service notification viability for contact 'mycontact'...
[1416254305.106463] [032.2] [pid=928] We shouldn't notify this contact about CRITICAL service states.
[1416254305.106474] [032.0] [pid=928] No contacts were notified.  Next possible notification time: Wed Dec 31 19:00:00 1969
[1416254305.106481] [032.0] [pid=928] 0 contacts were notified.

No meu caso, tive um mau contato service_notification_options , que impediu que a notificação inicial saísse, o que bloqueou todas as minhas escalações (se nunca enviarmos a notificação 0, não poderemos chegar à notificação 1)

    
por 17.11.2014 / 21:28
0

Meu primeiro passo seria tentar definir todos os parâmetros diretamente, em vez de depender da herança. Evite grupos também, se puder. Isso pelo menos dá a você um ponto de partida limpo para depurar.

define service {
    host_name                  XXXXXXX
    service_description        disk
    notification_interval      0
    notification_period        247
    notifications_enabled      1
    contacts                   XXXXXXX
    check_command              check_nrpe1!check_disk
    }

Você também pode querer tentar mudar o notification_interval para outra coisa, até mesmo deixá-lo fora (o padrão é 60). Só até você conseguir trabalhar.

    
por 08.10.2009 / 20:53
-1

Você tem uma seção "notificar por e-mail" em seu arquivo de configuração de comandos? Aqui está a seção relevante da minha:

Definição de comando 'notificar-por-email'

define comando {         command_name send-email         command_line / usr / bin / printf "% b" "***** Nagios ***** \ n \ nNotificação Tipo: $ NOTIFICATIONTYPE $ \ n \ nServiço: $ SERVICEDESC $ \ nHost: $ HOSTALIAS $ \ nEndereço: $ HOSTADDRESS $ \ nEstado: $ SERVICESTATE $ \ n \ nData / Hora: $ LONGDATETIME $ \ n \ nInformações Adicionais: \ n \ n $ SERVICEOUTPUT $ "| / bin / mail -s "** $ NOTIFICATIONTYPE $ alert - $ HOSTALIAS $ / $ SERVICEDESC $ é $ SERVICESTATE $ **" $ CONTACTEMAIL $         }

Seu sistema pode enviar e-mails em geral? Você pode usar o "mail -s test [email protected]", digitar algum texto, uma linha em branco e, finalmente, Ctrl-D para enviar?

    
por 20.09.2009 / 13:34
-1

mudando

register 0

para

register 1

no seu serviço de "alarme" pode ajudar.

    
por 03.10.2009 / 14:47
-1

Onde está o modelo de serviço para verificar ? Desde que você está usando com modelos de alarme e cheque. Eu acho que check sobrescreve alarme ...

define service {
    hostgroup_name          nrpe-disk
    service_description     disk
    use             alarm,check
    check_command           check_nrpe1!check_disk
    register            1
    }

talvez notification_failure_criteria possa ajudá-lo

Você realmente tem um notification_period chamado 247 ou melhor 24x7 ?

Você recebe um feedback correto do seu comando (então deve haver um alarme?)? você testou o comando na linha de comando (como seu nagios-user)?

    
por 06.10.2009 / 12:13

Tags