Я бы порекомендовал использовать плагин "negate", который входит в новейшие пакеты плагинов для мониторинга. Страница руководства для плагина: https://www.monitoring-plugins.org/doc/man/negate.html
Затем создайте команду клиента и пользовательский хост, такой как:
define command{
command_name check-host-dead
command_line /usr/local/libexec/negate -s /usr/lib/nagios/plugins/check_ping -H '$HOSTADDRESS$' -w 5000,100% -c 5000,100% -p 1
}
и хост плюс тупой сервис:
define host {
host_name hostname.domain.tld
alias Verbose Description Server
address 192.168.1.50
parents parent.host_name
notifications_enabled 1 ; Host notifications are enabled
event_handler_enabled 1 ; Host event handler is enabled
flap_detection_enabled 1 ; Flap detection is enabled
failure_prediction_enabled 1 ; Failure prediction is enabled
process_perf_data 1 ; Process performance data
retain_status_information 1 ; Retain status information across program restarts
retain_nonstatus_information 1 ; Retain non-status information across program restarts
check_command check-host-dead
max_check_attempts 10
notification_interval 1440
notification_period wakehours
notification_options d,u,r
contact_groups noticeadmins
}
define service {
host_name hostname.domain.tld
service_description Return OK
check_command return-ok
use generic-service
contact_groups noticeadmins
normal_check_interval 10
notification_interval 60 ; set > 0 if you want to be renotified
}
Несколько замечаний: мы используем Check_MK в качестве нашего графического интерфейса для Nagios, и эстетически для каждого хоста требуется услуга, или мы получаем пустую / бесполезную страницу. Так что это сервис, который всегда в порядке. В моем приложении я хотел получать оповещения только один раз в день в течение дня, следовательно, 1440 / Wakehours. Вам нужно будет определить или изменить такие вещи, как wakehours / noteadmins.