Відповіді:
Ось рішення, яке використовує названі труби. Він налаштований для Debian, але ви повинні мати змогу модифікувати його для BSD.
На моєму сервері OpenBSD я реєструю та надсилаю важливі повідомлення з моїх веб-додатків, які використовують об’єкт local1 . Ось мій /etc/syslog.conf, щоб це сталося:
local1.err /var/log/example.com
local1.err |while read log; do echo "$log" | /usr/bin/mail -s SYSLOG me@example.com; done
Зауважте, що цикл while нескінченно зчитує кожен рядок із syslogd, а потім передає його на пошту через ехо. Це важливо. Після того, як ехо виводить свою лінію, вона закінчує трубку, надсилаючи пошту EOF, щоб вона могла надсилати повідомлення журналу.
Іншими словами, ви не можете передавати електронну пошту безпосередньо через syslogd так:
local1.err |/usr/bin/mail -s SYSLOG me@example.com
тому що syslogd буде продовжувати записувати в трубу, поки він сам не припиниться або не надішле сигнал HUP, і в цей час пошта буде надсилати весь набір повідомлень журналу в один великий електронний лист.
Планування розсилки новин в кроні - це ще один спосіб отримувати повідомлення повільніше або масово.
Наприклад, якщо ви хочете щоденного дайджесту електронних повідомлень повідомлень журналу, встановіть прапор M та вкажіть електронну адресу монітора в /etc/newsyslog.conf :
# logfile_name owner:group mode count size when flags monitor
/var/log/example.com root:wheel 640 7 * 24 M me@example.com
Тоді плануйте розсилку новин у crontab:
# minute hour mday month wday command
0 * * * * /usr/bin/newsyslog
1-59 * * * * /usr/bin/newsyslog -m
Варіант -m для новин (8) визначає:
Режим моніторингу; обробляються лише записи, позначені прапорами "М". Для кожного файлу журналу, що контролюється, будь-який вихід журналу з останнього запуску журналу новин із прапорцем -m надсилається користувачеві, вказаному в розділі сповіщення монітора.
Можливо, ви захочете подивитися на реєстраційну систему чи логчер. Logcheck буде надсилати вам електронну пошту щогодини з лініями журналу, які не відповідають набору шаблонів. Я підозрюю, що ви, мабуть, могли змусити це робити це частіше. Я не знаю жодних інструментів, які роблять це, спостерігаючи за логінами, але я впевнений, що є щось, що це робить.
Я б використовував OSSEC. Він відстежує ваші журнали в режимі реального часу і дозволяє легко попередити електронною поштою (або іншими способами), коли конкретні події збігаються. Простий у використанні, масштабований та відкритий код.
посилання: http://www.ossec.net