Я хотел бы иметь возможность получать уведомления по электронной почте всякий раз, когда syslogd регистрирует что-то, скажем, err
приоритет или выше. Предположим, что это BSD-совместимый демон syslog.
- Можно ли это сделать?
- Должен ли я использовать именованный канал для сценария оболочки?
- Какие еще возможные решения есть?
Уведомления через syslogd (8)
На моем сервере OpenBSD я регистрирую и отправляю по электронной почте важные сообщения от моих веб-приложений, которые используют средство local1 . Вот мой /etc/syslog.conf, чтобы это произошло:
Обратите внимание, что цикл while бесконечно читает каждую строку из syslogd, а затем передает ее по почте через echo. Это важно. Когда echo выводит свою строку, он завершает канал, отправляя почту EOF, чтобы он мог отправить сообщение журнала по электронной почте.
Другими словами, вы не можете передавать напрямую по почте через syslogd следующим образом:
потому что syslogd будет продолжать запись в канал до тех пор, пока он сам не прекратит работу или не отправит сигнал HUP, после чего почта отправит весь набор сообщений журнала в одно большое электронное письмо.
Уведомления через новостной журнал (8)
Планирование новостного журнала в cron - это еще один способ получать сообщения медленнее или навалом.
Например, если вы хотите, чтобы ежедневный дайджест электронной почты сообщений журнала, установите флаг M и укажите адрес электронной почты монитора в /etc/newsyslog.conf :
Затем запланируйте новостной журнал в crontab:
Опция -m для newsyslog (8) гласит:
источник
Вы можете посмотреть на logcheck или logwatch. Logcheck ежечасно отправляет вам электронные письма со строками журнала, которые не соответствуют набору шаблонов. Я подозреваю, что вы могли бы сделать это делать это чаще. Я не знаю никаких инструментов, которые делают это, просматривая файлы журналов, но я уверен, что есть что-то, что делает это.
источник
Я бы использовал OSSEC. Он отслеживает ваши журналы в режиме реального времени и позволяет вам легко предупреждать по электронной почте (или другими способами), когда конкретные события совпадают. Простой в использовании, масштабируемый и с открытым исходным кодом.
ссылка: http://www.ossec.net
источник