apacheのratatelogsを使おうの巻
タイトルの通り、apacheが持つログのローテーション機能を使いました。
Linuxのディストリビューションであるlogrotateとの大きな違いは、
logrotateは設定した世代数を超えたログを削除してしまうが、rotatelogsは削除する機能はない。
です。
まあアクセスログを全て残しておきたいのならrotatelogsで間違いないんじゃないでしょうか。
個人情報を扱っていたり、重要な情報を扱う公開WEBとかは残しといたほうがいいですよね。
ただし、削除されないのでディスク容量には注意です。
さて、その設定方法は以下となります。
---------------------------------httpd.conf--------------------------------
CustomLog "|/APACHE_HOME/bin/rotatelogs /var/log/access_log.%Y%m%d 86400" common
-------------------------------------------------------------------------
アクセスログ名の後ろの%Yとかはフォーマット文字列です。上記例ではaccess_log.20080727
となります。
後ろの86400はローテートのタイミングです。上記例は秒数ですがファイルサイズ(MB)をタイミングと
することもできます。5Mってな感じで書きます。
上記はaccess_logの設定方法ですが、error_logにもjk_mod.logにも同様に設定できます。
rewrite_logは試していません。。