У меня есть куча несерверного оборудования, время простоя которого я хотел бы отслеживать, поэтому я интегрировал его в свою коллекцию Nagios (чтобы я мог создавать отчеты о доступности). Однако я не хочу получать уведомления по электронной почте, если они недоступны. Поэтому мои записи для этих машин выглядят следующим образом:
define host{
host_name Moni_MacBook_Pro
address 10.10.10.27
use generic-host
notifications_enabled 0
}
Однако я все равно получаю уведомления! Я подозреваю, что это связано с тем, что в шаблоне "генетический-хозяин" есть следующая строчка:
check_command check-host-alive
и, в свою очередь, шаблон «generic-service» выглядит следующим образом:
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» в определении хоста также является просто проверкой связи. Я изменил здесь "notification_options" на "n" (нет).