Plesk環境でのLogwatch
概要
Plesk環境ではログの格納場所が特殊なものがある(httpdのログなど)。このため、logwatchをインストールしても標準のconfigのままでは、ログがチェックされないものがある。各種ログをチェックするための設定を示す。
logwatch自体はrpmによりインストールしてあるものとする。
httpdログの設定
httpdのログはドメイン毎に/var/www/vhosts/<domain name>/statistics/logsに格納されている。このため、/etc/logwatch/conf/logwatch.confのLogDirでログの検索ディレクトリとして/var/www/vhostsを指定する。(LogDirは複数指定できないので、全ドメインで共通の.../vhostsまでを指定する。)
/etc/logwatch/conf/logwatch.conf
LogDir = /var/www/vhosts
Print = Off
Service = All
Mailer = /usr/sbin/sendmail -t
次にhttpグループのログファイル名をドメイン毎に指定する。これは、logfiles/http.confに以下のように記述する(foo.jp, bar.comの例)。
/etc/logwatch/conf/logfiles/http.conf
LogFile = foo.jp/statistics/logs/*access_log LogFile = bar.com/statistics/logs/*access_log
ログファイルの検索はLogDir + LogFileで検索されるので、Pleskのhttpdログファイルが検索されるようになる。また、logwatchはLogDirの指定有無に関わらず、/var/adm, /var/logは必ず検索対象としているので、上記のようにLogDirを指定しても、既存の/var/log配下のログは調査対象となる。
ドメインを追加した場合、http.confも修正しないといけないのが注意。
実際に動作するのか確認するには、以下のようにコマンドを直接実行して調査結果が表示されるか確認すればよい。# /usr/sbin/logwatch --service http --print --range today