Логи монитора Linux и оповещения по электронной почте?

13

У меня есть сервер с неисправной кнопкой питания, которая любит перезагружать себя. Обычно есть предупреждающие знаки, например, файл журнала acpid в / var / log начинает рассылать спам мусор около 10 часов или около того.

Есть ли простой способ, чтобы я мог что-то контролировать журнал acpid и отправлять мне электронное письмо, когда он начинает работать?

Я не считаю себя очень продвинутым, поэтому любые «руководства», которые вы можете иметь для выполнения чего-то подобного, были бы очень полезными и очень ценными. Спасибо!

Physikal
источник
Является ли замена кнопки питания и / или сервера приемлемым решением?
Meetai.com

Ответы:

19

Вы можете использовать что-то вроде LogWatch . Или даже простой скрипт, подобный этому (это псевдокод, который вам нужно изменить для своей среды):

 #!/bin/bash
 GREP_STRING=`grep -c <error string> <acpid log location>`
 if [ $GREP_STRING -ne 0 ] 
 then
    <send email notification>
 fi

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

Zypher
источник
1
LogWatch прекрасно работает для меня.
Дж. Циммерман
3
Проблема этого сценария в том, что он будет отправлять одну и ту же ошибку снова и снова, пока файл не будет повернут
chmeee
В Ubuntu / Debian logwatch можно установить с помощью: aptitude install -y logwatch
Meetai.com
8

Вы можете использовать OSSEC HIDS для настройки правил для файлов журналов и в то же время получать информацию о безопасности от вашего хоста.

Настройка очень проста:

  • Скачать исходник
  • Распакуйте его и запустите ./install.sh
  • Выберите локальную установку
  • Ответьте на вопросы (электронная почта, чеки и т. Д.)
  • Изменить /var/ossec/rules/local_rules.xmlкак указано ниже
  • Начать OSSEC с /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тегом.

chmeee
источник
5

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

Здесь есть руководство по его установке в Ubuntu http://beginlinux.com/blog/2008/11/install-nagios-3-on-ubuntu-810/ и одно здесь по установке на http: //www.debianhelp. co.uk/nagiosinstall.htm .

Марк Дэвидсон
источник
3

И вы можете отправить его примерно так:

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
башмак
источник
3

Я использую Zabbix с инструментами IPMI для перезапуска неисправных серверов по требованию. Кроме того, я думаю, что OSSEC также является хорошим выбором, но вам действительно нужно поэкспериментировать и отладить, прежде чем поместить его в продукт ...

edomaur
источник
3

Скачайте и установите Splunk на сервер. Это похоже на logwatch, но предоставляет вам поисковую систему для ваших журналов.

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

Он также может быть настроен на отправку предупреждений или выполнение сценариев с определенными пороговыми значениями. Таким образом, если в ваш журнал попадает определенная ошибка, вы можете написать ее для автоматического перезапуска службы-нарушителя.

Мы используем Splunk в нашем кластере серверов, и это было спасение!

Амиш гик
источник
+1 для Splunk это выглядит довольно неплохо, я попробую сегодня вечером.
Марк Дэвидсон
1

У предыдущего работодателя мы использовали logsurfer + для мониторинга журналов в режиме реального времени и отправки оповещений по электронной почте. Требуется много времени и конфигурации, чтобы настроиться на ложные срабатывания, но у нас был набор правил, который работал довольно хорошо для различных результатов и предупреждений, гораздо более ценный, чем Nagios, для аналогичных целей.

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

jtimberman
источник