Apacheのlog管理

過去ログは放っておくと access_log.1、access_log.2……となっていくのだが、これを日付フォーマット(access_log.20030330など)にして、ディレクトリもわけた上で保存しておきたいと思う。とりあえず/etc/logrotate.d/httpdを編集して、postrotateでシェルスクリプトを呼び出すように変更。


#!/bin/sh
today=`date '+%Y%m%d'`
logdir="/usr/local/apache2/logs"
cp $logdir/access_log.1 $logdir/access_logs/access_log.$today

シェルスクリプトこんな感じなんだけど、わざわざシェルスクリプトを書くほどのもんなんだろうか?もちっとスマートにやれそうな気もしないではない。どうすればいいんだろうとちょっと悩む。とは言え今のやり方だってウマく動くかどうかまだわからんのだからとりあえず様子見だ。