Я хотел бы настроить Nagios на отправку пейджинга каждые 6 часов с понедельника по пятницу, но только каждые 24 часа в субботу и воскресенье. Мне трудно понять, как сделать так, чтобы у одной группы администраторов были две разные частоты пейджинга.
решение1
Вот пример того, как это можно сделать, но я надеюсь, что кто-то найдет лучший способ. Определите свою услугу для будних дней:
define service{
name foo-weekday
host_name linux-server
service_description check-disk-sda1-weekday
check_command check-disk!/dev/sda1
max_check_attempts 5
check_interval 5
retry_interval 3
check_period weekday
notification_interval 360
notification_period weekday
notification_options w,c,r
contact_groups linux-admins
}
Затем унаследуйте его, переопределив check_period, notification_interval, notification_period и service_description (которые должны быть уникальными для каждого хоста) для выходных:
define service{
name foo-weekend
use foo-weekday
service_description check-disk-sda1-weekend
check_period weekend
notification_interval 1440
notification_period weekend
}
Редактировать: Интересно, будут ли работать пользовательские макросы в этой ситуации? Например, есть только 1 определение службы:
define service{
host_name linux-server
service_description check-disk-sda1
check_command check-disk!/dev/sda1
max_check_attempts 5
check_interval 5
retry_interval 3
check_period 24x7
notification_interval $USER21$
notification_period 24x7
notification_options w,c,r
contact_groups linux-admins
}
Затем, у вас есть два разных файла ресурсов. Один определяет USER21 как "360", а другой как "1440". Когда начнутся выходные, скопируйте последний на место и перезагрузите конфигурацию nagios. Когда выходные закончатся, скопируйте первый на место и перезагрузите.