Я отключил уведомления в определенные периоды времени, например:
define timeperiod{
timeperiod_name test
alias Except test Hours
monday 08:20-08:15
[etc..]
sunday 08:20-08:15
}
Поэтому, если служба отключается между 08: 15-08: 20, я не получаю уведомления по почте. Только сегодня случилось так, что служба не работала еще 2 часа, и я ожидал получить электронное письмо, когда она вернется в notification_period.
Как мне сказать Nagios отправить уведомление по электронной почте, если оно соответствует времени уведомления, а состояние службы по-прежнему критическое?
РЕДАКТИРОВАТЬ:
Мой первый подход был неправильным, поэтому я последовал совету и использовал такие периоды исключения:
define timeperiod{
timeperiod_name test2
alias test2
use 24x7
exclude test
}
define timeperiod{
timeperiod_name test
alias Except test Hours
thursday 12:15-12:25 # it was thursday when I tested
}
и сервисная проверка:
define service{
use generic-service
service_description TEST
check_command check_nrpe!check_TEST
host_name some.host.here
notification_period test2
}
и шаблон услуги:
define service{
name generic-service
active_checks_enabled 1
passive_checks_enabled 1
parallelize_check 1
obsess_over_service 1
check_freshness 1
notifications_enabled 1
event_handler_enabled 1
flap_detection_enabled 0
failure_prediction_enabled 1
process_perf_data 1
retain_status_information 1
retain_nonstatus_information 1
is_volatile 0
check_period 24x7
max_check_attempts 2
check_interval 120s
retry_interval 60s
contact_groups admins
notification_options w,u,c,r
notification_interval 120s
notification_period 24x7
register 0
}
Но я все еще не получаю уведомления. Однако я получаю уведомление, если вручную перенесу проверку службы ИЛИ если я перезагружу nagios.