Предполагая, что interval_length
директива по умолчанию установлена на 60:
$ grep interval_length /usr/local/nagios/etc/nagios.cfg
# This value works of the interval_length you specify later. If you leave
# actual seconds rather than a multiple of the interval_length variable.
interval_length=60
Для специальных служб вам необходимо определить другой шаблон для него в /usr/local/nagios/etc/objects/templates.cfg
:
define service{
name special-service
...
max_check_attempts 3
normal_check_interval 20
retry_check_interval 3
notification_interval 60
...
}
Обратите внимание на:
normal_check_interval
: эта услуга проверяется каждые 20 минут в нормальных условиях
retry_check_interval
: количество минут ожидания перед планированием повторной проверки, когда служба перешла в состояние не в порядке. Обратите внимание, что если служба была повторно запущена max_attempts
без изменения ее статуса, она вернется к запланированной с check_interval
частотой.
и используйте этот шаблон для вашего сервиса:
define service{
use special-service
host_name xx
service_description yy
check_command zz
contact_groups admins
}
Вам также может понадобиться определить эскалацию службы, чтобы изменить ее в notification_interval
зависимости от состояния службы, например:
define serviceescalation{
host_name xx
service_description yy
last_notification 0
notification_interval 10
escalation_options [w,u,c]
contact_groups admins
}
Это означает, что это расширение службы используется, когда служба находится в состоянии WARNING, UNKNOWN или CRITICAL. И теперь у вас есть новые интервалы уведомления: 10 минут.