2016-05-11 7 views
0

Я пытаюсь настроить уведомления по электронной почте на сервере nagios. Некоторое время машина nagios работает нормально. За исключением того факта, что он не отправляет электронные письма. Я использовал хром-плагин на своем месте, пока не получу это.nagios не отправляет emalis

Во всяком случае, это то, как у меня установка контакты файла:

define contact{ 
     contact_name      nagiosadmin    ; Short name of user 
     use        generic-contact   ; Inherit default values from generic-contact template (defined above) 
     alias       Nagios Admin   ; Full name of user 
     email       [email protected];  <<***** CHANGE THIS TO YOUR EMAIL ADDRESS ****** 
     service_notification_period  24x7 
     host_notification_period   24x7 
     service_notification_options  w,u,c,r,f 
     host_notification_options  d,u,r,f 
     service_notification_commands notify-service-by-email 
     host_notification_commands  notify-host-by-email 
     } 


define contactgroup{ 
    contactgroup_name  admins 
    alias     Nagios Administrators 
    members     nagiosadmin 
    } 

И у меня есть мои настройки хоста и сервис определения, как это:

define host{ 
    use      linux-server   ; Name of host template to use 
                ; This host definition will inherit all variables that are defined 
                ; in (or inherited by) the linux-server host template definition. 
    host_name    web1 
    alias     web1 
    address     10.10.10.6 
    contact_groups   admins 
    } 


define service{ 
    use        local-service   ; Name of service template to use 
    host_name      web1 
    service_description    HTTP 
    contact_groups     admins 
    check_command     check_http 
    notifications_enabled   1 
    } 

Я проверил, если это работает закрытие http на веб-сервере, которое он контролирует. Подождал некоторое время, и на почтовом сервере не было получено сообщений.

Я также telnetted к почтовому серверу на машине nagios. И я могу отправить электронное письмо на счет, который я хочу получить через telnet.

Буду признателен за помощь здесь!

ответ

0

Просмотрите конфигурацию команды служебных уведомлений и выполните ее в терминале для отладки.

Пример: 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$\n $NOTIFICATIONCOMMENT$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ }