ログ分析ツールLogwatchのインストール

サーバログを解析してレポートを作成、送信してくれるLogwatchを導入する。デフォルトで解析対象外のnginxまで対応で行う。

 

1. インストール

# yum install logwatch

 

2. 初期設定

デフォルトの設定ファイル/usr/share/logwatch/default.conf/logwatch.confからの変更点のみ/etc/logwatch/conf/logwatch.confに記載すればよいが、DailyReportパラメータのみはデフォルトファイルを変更する必要がある(cronが直接確認しているため)。面倒なのでデフォルトを変更することにする。

# cp /usr/share/logwatch/default.conf/logwatch.conf /usr/share/logwatch/default.conf/logwatch.conf.old
# vim /usr/share/logwatch/default.conf/logwatch.conf
# レポートメールの送信先
MailTo = hoge@hoge.com

レポート内容をコンソールに出力して確認。

# logwatch --print

一部の設定を一時的に変更して確認するには、例えば、sshdサービスの全ての期間のログを詳細レベルで出力する場合は以下。

# logwatch --service sshd --range all --detail high --print

logwatchの定期実行はdaily cronで行われる。実行内容のテスト。

# /etc/cron.daily/0logwatch

先ほど設定したメールにレポートが届いていればOK。CentOSでの日次、週次cronの設定は/etc/anacrontabに記載されている。

3. nginxのログ

ここを参考に進める。httpdの設定をそのまま流用できるため、関連ファイルを複製。

# cp /usr/share/logwatch/scripts/services/http /etc/logwatch/scripts/services/nginx
# cp /usr/share/logwatch/default.conf/services/http.conf /etc/logwatch/conf/services/nginx.conf
# cp /usr/share/logwatch/default.conf/logfiles/http.conf /etc/logwatch/conf/logfiles/nginx.conf
# vim /usr/share/logwatch/default.conf/services/nginx.conf
Title = "nginx" # httpdから変更
LogFile = nginx # httpから変更
# vim /etc/logwatch/conf/logfiles/nginx.conf

apacheの記述は全てコメントアウトして、必要なのは以下のみ。

LogFile = nginx/access*.log
Archive = nginx/access*.log-*.gz
*ExpandRepeats
*ApplyhttpDate

リポート内容の確認。

# logwatch --service nginx --range today  --print

 

■参考