Назад | Перейти на главную страницу

Как заставить nagios отправлять мне краткие и информативные предупреждения?

Формат предупреждающих сообщений по умолчанию:

** RECOVERY Host Alert: server is UP **
***** Nagios *****

Notification Type: RECOVERY
Host: server
State: UP
Address: server.ru
Info: PING OK - Packet loss = 0%, RTA = 26.00 ms

Date/Time: Thu Aug 13 17:08:16 MSD 2009

Я хочу максимум информации минимумом букв. Во-первых, чтобы получить информацию из SMS. Во-вторых, в 90% случаев читать только заголовки сообщений электронной почты.

Например, предыдущее сообщение может быть просто "H: server is UP"где H означает Host Alert. Если этот сервер не работает, я бы хотел получить такое сообщение: [!] H: server is DOWN.

Вместо сообщения, что «Использование подкачки на сервере КРИТИЧНО», я хотел бы получить «[!] S: использование сервера / подкачки> 50%», где 50 было взято из конфигурации nagios для check_swap, а не жестко закодировано в сообщении.

И если "Router / wan2 критичен", я хочу видеть "канал ADSL отключен".

Итак, чтобы подвести итог, я хочу настроить сообщение для каждой службы и ее состояния отдельно, с возможностью использования параметров плагина в тексте.

Как я могу этого добиться?

Есть несколько агрегированных надстроек для nagios, которые, помимо того, что позволяют вам указывать более короткие оповещения, объединяют несколько оповещений на одной странице, так что вы не будете получать страницы 200 раз, когда многие вещи выходят из строя одновременно.

Два хороших:

  • Нан (Это работает как демон)
  • нанс (Это запускается через cron. Пусть вас не обманывает "Netsaint" в названии - он очень хорошо работает с текущими версиями nagios)

Оповещения от nans выглядят примерно так (но, конечно, их можно настроить)

CRITICAL pages: 2 hostname.example.com - WWW is CRITICAL - Thu Aug 13 11:00:00 EDT 2009 | hostname.example.com - SSL is CRITICAL - Thu Aug 13 11:00:01 EDT 2009

Кроме того, если вам нужна большая гибкость, подумайте о том, чтобы поместить сценарий bash между вами и nagios. Это может позволить вам отправлять сообщения с большей гибкостью, например, вы не хотите, чтобы электронные письма для восстановления отправлялись вашему автоматическому создателю билетов.