У меня есть сервер с неисправной кнопкой питания, который любит перезагружаться. Обычно есть предупреждающие знаки, например, файл журнала acpid в / var / log начинает рассылать спам мусора в течение примерно 10 часов.
Есть ли простой способ сделать так, чтобы что-то отслеживало журнал acpid и отправляло мне электронное письмо, когда у него появляется новая активность?
Я бы не считал себя очень продвинутым, поэтому любые «гиды», которые у вас могут быть для выполнения чего-то подобного, были бы очень полезны и очень признательны. Спасибо!
Вы можете использовать что-то вроде LogWatch. Или даже простой скрипт вроде этого (это псевдокод, который вам нужно будет изменить для вашей среды):
#!/bin/bash
GREP_STRING=`grep -c <error string> <acpid log location>`
if [ $GREP_STRING -ne 0 ]
then
<send email notification>
fi
Поместите это в cron, чтобы он запускался каждый час или около того, и вы получите электронное письмо с уведомлением, когда это станет странным.
Ты можешь использовать OSSEC HIDS для настройки правил для файлов журналов и, в то же время, получения информации о безопасности с вашего хоста.
Настроить очень просто:
/var/ossec/rules/local_rules.xml
как указано ниже/var/ossec/bin/ossec-control start
local_rules.xml
<group name="local,syslog,">
<rule id="100001" level="13">
<regex>^.*Your string.*$</regex>
<description>I've just picked up a fault in the AE35 unit. It's going to go 100% failure in 72 hours</description>
</rule>
</group>
Правила могут быть очень гибкими и сложными. Видеть этот стол чтобы получить представление о параметрах, входящих в правило.
Если вам не нужны или не нужны другие функции безопасности, вы можете отключить их, удалив include
линии под rules
тег.
Я бы предложил Nagios это то, что мы запускаем там, где я работаю, для мониторинга нескольких машин с сетью. Это очень хорошо, я не использовал его специально для того, что вы делаете, но вы, безусловно, можете настроить его для отправки вам электронной почты при возникновении ошибок.
Здесь есть руководство по установке на Ubuntu http://beginlinux.com/blog/2008/11/install-nagios-3-on-ubuntu-810/ и один здесь для установки на http://www.debianhelp.co.uk/nagiosinstall.htm.
И вы можете отправить его примерно так:
EMAILMSG="/tmp/logreport.$$"
echo "Something to put in the email" >> $EMAILMSG
cat $EMAILMSG | mail -s "Whatever Subject You Like" user@domain.com
rm -f $EMAILMGS
я использую Zabbix с инструментами IPMI для перезапуска неисправных серверов по запросу. Также я думаю OSSEC тоже хороший выбор, но вам действительно нужно поэкспериментировать и отладить, прежде чем вставлять его в продукт ...
Загрузить и установить Splunk на сервере. Он похож на logwatch, но предоставляет вам поисковую систему для ваших журналов.
Вы можете настроить его для индексации ваших журналов, затем вы можете выполнять поиск в журналах и находить шаблоны, находить ошибки, а затем смотреть, что делают другие журналы в этой конкретной точке отказа.
Его также можно настроить для отправки предупреждений или выполнения сценариев с определенными пороговыми значениями. Поэтому, если в ваш журнал начинает попадать спам о конкретной ошибке, вы можете создать сценарий для автоматического перезапуска нарушившей службы.
Мы используем splunk в нашем кластере серверов, и это было нам спасением!
У предыдущего работодателя мы использовали логсерфер + для мониторинга журналов в режиме реального времени и отправки предупреждений по электронной почте. Для настройки на ложные срабатывания требуется много времени и настроек, но у нас был набор правил, который достаточно хорошо работал для множества обнаружений и предупреждений, гораздо более ценных, чем Nagios для аналогичных целей.
К сожалению, у меня больше нет доступа к конфигурационному файлу, чтобы предоставить образцы того, что мы отфильтровали, но сайт должен предоставить больше информации и примеров.
Вы также можете взглянуть на мои Осьминог проект.