Я пытаюсь добавить оповещения по электронной почте к существующей установке Nagios. Я использую веб-интерфейс, чтобы следить за некоторыми некритическими системами в течение нескольких месяцев, и он работает хорошо; предупреждения и критические проблемы обнаруживаются без проблем.
Мой следующий шаг - включить функцию оповещения, но, несмотря на часы возни, я не смог получить даже простейший предупреждение о пожаре. У меня нет идей относительно того, что может пойти не так. Почти наверняка это что-то простое, что я просто не смог уловить, поэтому, надеюсь, один из вас, ребята, легко это заметит.
Команда, которую я тестирую, очень проста. Сначала я просто пытаюсь записать в файл:
define command{
command_name alerter
command_line echo "Alerter command fired by Nagios" >> /usr/local/nagios/var/alerter.log
}
Я тестировал, что пользователь nagios может выполнить эту команду с помощью sudo. Вроде все хорошо.
Хосты и сервисы относятся к контактной группе «администраторы». Это шаблоны, которые они используют, ни один из них не отменяет эти настройки.
define host{
name generic-host
notifications_enabled 1
event_handler_enabled 1
flap_detection_enabled 1
failure_prediction_enabled 1
process_perf_data 1
retain_status_information 1
retain_nonstatus_information 1
check_period 24x7
check_interval 1
retry_interval 1
max_check_attempts 10
check_command check-host-alive
notification_period 24x7
notification_interval 120
notification_options d,u,r,s,f
contact_groups admins
register 0
}
define service{
name generic-service
active_checks_enabled 1
passive_checks_enabled 1
parallelize_check 1
obsess_over_service 1
check_freshness 0
notifications_enabled 1
event_handler_enabled 1
flap_detection_enabled 1
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 3
normal_check_interval 1
retry_check_interval 1
contact_groups admins
notification_options w,u,c,r
notification_interval 120
notification_period 24x7
register 0
}
Контакт и группа контактов настроены как таковые:
define contact{
name generic-contact
service_notification_period 24x7
host_notification_period 24x7
service_notification_options w,u,c,r,f,s
host_notification_options d,u,r,f,s
service_notification_commands alerter
host_notification_commands alerter
register 0
}
define contact{
contact_name nagiosadmin
use generic-contact
alias Nagios Admin
email alerts@tekretic.tk
}
define contactgroup{
contactgroup_name admins
alias Nagios Administrators
members nagiosadmin
}
Когда я вызываю сбой, Nagios забирает его и регистрирует вот так ...
[1315210448] SERVICE ALERT: ifs.aleph;Test service;CRITICAL;HARD;3;HTTP CRITICAL: HTTP/1.1 400 Bad Request - string 'Blah blah' not found on 'http://aleph.tekretic.com.au:80/' - 168 bytes in 0.369 second response time
[1315210653] SERVICE ALERT: ifs.aleph;Test service;OK;HARD;3;HTTP OK: HTTP/1.1 200 OK - 416 bytes in 0.364 second response time
.. но в моем файле "alertter.log" ничего не регистрируется. Как будто команда оповещателя никогда не запускается.
Что мне не хватает ??
Убедитесь, что в nagios.cfg
:
log_notifications=1
enable_notifications=1
Также попробуйте увеличить debug_level
до 32 для уведомлений, чтобы увидеть, что в нем написано:
debug_level=32