一、Logwatch介紹
Logwatch是一款專門監(jiān)測Linux日志的軟件。它可以將日志統(tǒng)計分析并通過郵件發(fā)送給指定收件人[1][2]。
二、安裝
logwatch 一旦安裝,就會在 /etc/cron.daily/ 目錄中建立“0logwatch”文件,用于在每天定時執(zhí)行 logwatch 命令,分析和監(jiān)控相關(guān)日志。如果想要讓這個日志分析馬上執(zhí)行,則只需執(zhí)行 logrotate 命令即可。[4]:
yum -y install logwatch
cp /usr/share/logwatch/default.conf/logwatch.conf /etc/logwatch/conf/logwatch.conf
#復(fù)制配置文件
logrotate
三、過程
1.首先配置mailx所使用的SMTP。修改/etc/mail.rc并添加smtp身份認(rèn)證信息[3]。例如
set from=monitor@yourdomain.com
set smtp=smtp.yourdomain.com
set smtp-auth=login
set smtp-auth-user=monitor
set smtp-auth-password=PassWord
2.我發(fā)現(xiàn)/etc/cron.daily/0logwatch中,任務(wù)使用了默認(rèn)配置文件/usr/share/logwatch/default.conf/logwatch.conf ,因此修改該配置文件
第35行 MailTo = 接收日志用的郵箱,多個郵箱用英文逗號分隔
第44行 MailFrom = monitor@yourdomain.com #由于部分SMTP不允許郵件別名,建議此地址與mailx配置的發(fā)件人相同。
第109行 mailer = "mailx -t" #將郵件客戶端更換為mailx。其中-t參數(shù)表示從內(nèi)容中直接讀取郵件頭。參考 man mailx
3.手動執(zhí)行l(wèi)ogwatch。等待一會兒,就會收到郵件。如果失敗,可以查看系統(tǒng)日志或者在系統(tǒng)中執(zhí)行mail,查看用戶的本地郵件。
OT. 在配置Rocks Cluster時若需要讓全部節(jié)點(diǎn)將日志都使用外部smtp發(fā)送郵件,需要手動修改所有節(jié)點(diǎn)的上述文件。
[1] http://sourceforge.net/projects/logwatch/
[2] http://dbanotes.net/opensource/logwatch_linux_log.html
[3] http://lwg2001s.iteye.com/blog/1826020
[4] https://zhuanlan.zhihu.com/p/654556865