如何在 Debian 服务器上设置电子邮件日志通知

如何在 Debian 服务器上设置电子邮件日志通知

我搭建过很多 Debian 服务器。它们几乎从不出现故障,但一旦出现故障,我的日志系统就不够好。所以我告诉自己,这次会有所不同。

我已经让 Apache2 和 MySQL 顺利运行并且与基于名称的虚拟主机一起工作。

我有 etckeeper 和 mysqlbackup 以及 S3 备份脚本。

我已经锁定了我的 SSL 证书并且刚刚安装了 Exim4。

现在 Logcheck 已经在五天没有邮件传输的情况下发送了 2000 封电子邮件。

现在显然我需要写一大堆自定义规则日志监视

等什么…

你是认真的吗?:http://logcheck.org/docs/README.logcheck-database

Apr  6 19:30:24 oempc wwwoffled[11763]: WWWOFFLE Online.
Apr  6 19:31:54 oempc wwwoffled[11763]: WWWOFFLE Offline.

...then the local ignore pattern you need is something like this:

^\w{3} [ :0-9]{11} oempc wwwoffled\[[0-9]+\]: WWWOFFLE (On|Off)line\.$

我只想成为一名优秀的系统管理员并收到电子邮件并阅读重要的事情。

我怎样才能让 Logwatch 向我发送“MySQL 内存不足”或“Apache 爆炸”而不是每小时 50 页这样的信息?:

This email is sent by logcheck. If you no longer wish to receive
such mail, you can either deinstall the logcheck package or modify
its configuration file (/etc/logcheck/logcheck.conf).

    System Events
    =-=-=-=-=-=-=
    May 26 18:02:22 Debian6-VPS kernel:

**BAZZILION LINES OF NETWORK INFORMATION THAT I DON'T CARE ABOUT**

PS /etc/logcheck/logcheck.conf 中没有任何内容 AHAHAHAHAHAHAHAHA叹。

答案1

如果你想要一个快速设置解决方案来监控 mysqld 进程、磁盘使用情况、Apache2 和资源使用情况,我建议使用监控使用外部 google smtp 服务配置/etc/monit.conf如下;

set daemon  60
set mailserver smtp.googlemail.com port 587
    username "Rabbi" password "Loew"

set alert [email protected] but not on { instance } with reminder on 15 cycles 

#grab some service scripts
include /etc/monit.d/*

set httpd port 2812
        allow 127.0.0.1

我有以下内容/etc/monit.d/filesystem.conf

check device rootfs with path /
    if changed fsflags then alert
    if space usage > 90% for 5 times within 15 cycles
      then alert else if passed for 10 cycles then alert
    if space usage > 95% then alert
    if inode usage > 90 % then alert

以及类似这样的内容,以便在适当的情况下提醒资源使用情况/etc/monit.d/system.conf

check system localhost
    if loadavg (1min) > 10 for 10 cycles  then alert
    if loadavg (5min) > 60  for 10 cycles then alert
    if memory usage > 90% for 8 cycles   then alert
    if swap usage > 20% then alert
    if cpu usage (user) > 90% then alert
    if cpu usage (system) > 75% then alert
    if cpu usage (wait) > 75% then alert

我还启动了一个名为monit-共享其目的是捕获一些常见服务(sendmail、dovecot、mysql)等的启动配置。

您通常可以检查哪些适用于 /etc/monit.d,例如,httpd.conf它们应该自动执行您提到的基本检查,并使用您的外部电子邮件服务通知。

相关内容