golf4 Posted September 18, 2013 Posted September 18, 2013 Хотелось бы чтобы Nagios будил ночью только в случае DOWN AND CRITICAL а все остальные события слал утром. Насколько я подозриваю это будет связанно с обработкой exit code. И так вопрос: Есть ли плагин для этого или какие варианты решения есть? P.S. На данный момен идея есть только писать скрипт. Вставить ник Quote
agr Posted September 18, 2013 Posted September 18, 2013 Нет, exit code отлавливать не надо. Скрипт писать надо. В нагиосе командам можно передавать состояние сервиса или хоста через специальные переменные $SERVICESTATE$ и $HOSTSTATE$ в аргументы команды. У вас есть два пути их использования: 1) Изменить стандартные команды оповещения на свой скрипт. Вот как выглядит стандартная команда оповещения хоста command[host-notify-by-email]=/bin/echo -e "***** Nagios *****\n\nHost "$HOSTALIAS$" is $HOSTSTATE$!\n\nDate/Time: $DATETIME$\n" | /bin/mail -s 'Host $HOSTNAME$ is $HOSTSTATE$!' $CONTACTEMAIL$ имена параметров интуитивно понятны. Вместо конвейера 'echo | mail ' напишите свой скрипт, который будет слать алерты в зависимости от $HOSTSTATE$ и времени суток. 2) Использовать встроенный механизм event_handler, почитайте доку, там довольно понятно он описан. Использовать специальные переменные также как и в предыдущем пункте. Вставить ник Quote
ktoto Posted September 18, 2013 Posted September 18, 2013 А Time Periods заюзать для этого не пробовали? Вставить ник Quote
agr Posted September 19, 2013 Posted September 19, 2013 Точно, все гораздо проще, нужно использовать time periods. Сам ими никогда не пользовался, поэтому как-то не подумал... Вставить ник Quote
golf4 Posted September 19, 2013 Author Posted September 19, 2013 Или я не внимателен, но в упор не вижу как используя Time Periods можно добится только critical i down меседжей в ночное время. Не могли бы вы секцию с примером привести. Вставить ник Quote
ktoto Posted September 19, 2013 Posted September 19, 2013 Нечто типа такого define contact{ contact_name TEST-CRIT-DOWN-24x7 alias TEST-CRIT-DOWN-24x7 service_notification_period 24x7 host_notification_period 24x7 service_notification_options c host_notification_options d service_notification_commands notify-service-by-email, notify-service-by-littlesms host_notification_commands notify-host-by-email, notify-host-by-littlesms email mail@example.com pager +700000000000 } define contact{ contact_name TEST-W-U-R alias TEST-W-U-R service_notification_period workhours host_notification_period workhours service_notification_options w,u,r host_notification_options r service_notification_commands notify-service-by-email, notify-service-by-littlesms host_notification_commands notify-host-by-email, notify-host-by-littlesms email mail@example.com pager +700000000000 } это из contacts_icinga.cfg workhours меняйте на нужное в timeperiods_icinga.cfg В nagios думаю конфиги практически идентичны. Вставить ник Quote
agr Posted September 19, 2013 Posted September 19, 2013 (edited) Наверно придется создать два разных контакта для рабочего и нерабочего времени define contact { name i-am-home host_notification_period nonworkhours service_notification_period nonworkhours host_notification_options d service_notification_options c ... } define contact { name i-am-working host_notification_period workhours service_notification_period workhours host_notification_options d,u,r,f service_notification_options r,u,c,w,f ... } UPD: ktoto опередил Edited September 19, 2013 by agr Вставить ник Quote
golf4 Posted September 19, 2013 Author Posted September 19, 2013 Спасибо! Как-кто не подумал что просто в секции рознести можно. Искал сложного пути .. P.S. Прямо саркастичная фраза напрашиваеться :Зачем делать просто, если можно сложно: Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.