ログローテーションの履歴
logrotate
Unixについてるやつ。
logrotate.confに従ってファイルをリネームする。
/var/logらへんはだいたい標準でやってくれてる。
cronで /etc/cron.daily/logrotate あたりに登録されている。
世代数指定できるが、あんまり大きい数にすると重くなる(かも)
最大数を越えると削除されるので、定期的にアーカイブしなければならない。
apacheのログをローテーションにかけるなら、新しいファイルをapacheに認識させないといけないので再起動しなければならない。
rotatelogs
apacheについてるやつ。
書き出し時に分ける。
apache起動するとrotatelogsというプロセスが立ち上がっている。
こちらの方が処理のタイムラグが少ない。
logrotateと違って削除されることはない。
# CustomLog "|/usr/sbin/rotatelogs /path/to/access.%Y%m%d.log 86400 540" combined