logwatch でバーチャルドメイン運用の http ログをチェックする

この記事は公開されてから12年経過しています。現在とは内容が異なる場合がありますのでご注意ください。
最新の記事や関連記事をお探しの方は下の「サイト内検索」で検索してみてください。

どうも、新年あけましておめでとうございます。本年もよろしくお願いします。

さて、今年1本めのネタは logwatch についてです。

以前に FreeBSD に logwatch をインストールする というのをやりましたが、今回はプラグインを追加します。
といっても、既存の apache ログをチェックする http プラグインをコピーして設定を変えるだけという簡単なものです。

※下記は FreeBSD に posts を使ってインストールした環境を想定しています。

まずはチェックするログファイルを指定するファイルをコピーします。

コピー先のファイル名はチェックしたいバーチャルドメイン名に合わせておくといいかもしれません。

コピーしたファイルを開いてログファイルへのパスを設定します。

LogFile = /home/domain/www/logs/access_log
Archive = /home/domain/www/logs/access_log.*.gz

LogFile のファイル名にはドットは使えませんので、ログファイル名が /home/domain/www/logs/access.log とかの場合はお気をつけ下さい(私はこれで引っかかったので、apache の設定を変えました)。Archive の方は問題なく使えます。
というか /^[-_wd]+$/ という正規表現パターンに一致していないとだめみたいです。もし一致していないと Unexpected filename: [[$LogFile]]. Not used ってエラーが表示されます。

次にプラグイン本体のほうをコピーします。といってもシンボリックリンク作ってしまえばokです。

なお、ここで気をつけるのはファイル名です。先のログファイルを指定する conf ファイルから拡張子を除いたものにしてください。
conf ファイル名: http-vdomain.conf なら http-vdomain となります。

これで設定は終わりです。
コンソールから次のようにコマンドをいれてきちんと表示されるか確認しておきましょう。

もしエラーとかがあればその部分を確認して修正してください。

そうそう、同じようにエラーログをチェックする logfiles/http-error.conf, services/http-error もしておくといいと思いますよ。