У меня есть набор механизма несервера, для которого я хотел бы отследить времена простоя, и поэтому я интегрировал их в своем наборе Nagios (так, чтобы я мог генерировать отчеты о доступности). Однако я не хочу быть предупрежденным по электронной почте, если они недостижимы. Поэтому мои записи для этих машин смотрят следующим образом:
define host{
host_name Moni_MacBook_Pro
address 10.10.10.27
use generic-host
notifications_enabled 0
}
Однако я все еще получаю уведомления! Я подозреваю, что это связано с тем, что шаблон "генетический хост" содержит следующую строку:
check_command check-host-alive
и в свою очередь шаблон "универсального сервиса" смотрит следующим образом:
define service{
name generic-service ; The 'name' of this service template
active_checks_enabled 1 ; Active service checks are enabled
passive_checks_enabled 1 ; Passive service checks are enabled/accepted
parallelize_check 1 ;
obsess_over_service 1 ; We should obsess
check_freshness 0 ; Default is to NOT check service 'freshness'
notifications_enabled 1 ; Service notifications are enabled
event_handler_enabled 1 ; Service event handler is enabled
flap_detection_enabled 1 ; Flap detection is enabled
process_perf_data 1 ; Process performance data
retain_status_information 1 ; Retain status information
retain_nonstatus_information 1 ; Retain non-status information
is_volatile 0 ; The service is not volatile
check_period 24x7 ;
max_check_attempts 3 ;
normal_check_interval 10 ;
retry_check_interval 2 ; Re-check the service every two minutes
contact_groups admins ; Notifications get sent out to everyone in
notification_options u,c ;
notification_interval 1440 ; Re-notify about service problems every hour
notification_period 24x7 ; Notifications can be sent out at any time
register 0 ; DONT REGISTER THIS DEFINITION
}
Мой диагноз - то, что строка "notification_options u, c" в сервисном шаблоне так или иначе переопределяет мой запрос для НЕ отправки уведомлений в определении хоста. Как возможно зафиксировать это, если вообще?
Думаю, я разобрался. У меня есть следующий сервис:
#Check that ping-only hosts are up
define service {
hostgroup_name all
service_description PING
check_command check_ping!100.0,20%!500.0,60%
use generic-service
notification_options d,u,r
notification_interval 0
}
Вероятно, именно оттуда поступали все нежелательные письма. Скорее всего, в этом нет необходимости, так как "check_command" в определении хоста - это тоже просто ping. Я изменил здесь "notification_options" на "n" (none).