本番運用にともなって CentOS5
移転しました。
セッションファイル削除 cron
Railsの1.2.5だとセッションファイルが溜まっていくため、定期的に削除する。
0 * * * * find /APP_ROOT/tmp/sessions/ -name 'ruby_sess*' -ctime +10 | xargs rm -f
ログローテーション
railsのデフォルト設定ではログファイルをロールオーバーしてくれないので、放っておくとログファイルがどんどん肥大化していくため、ログローテートを行う.
これは 14日分のログをローテートして、古いログファイルは圧縮し、新しい空のログファイルをウェブサーバーが書き込み可能な状態で作成する。
設定ファイル
vi /etc/logrotate.d/hoge ----- /APP_ROOT/log/*.log { daily missingok rotate 52 compress delaycompress notifempty copytruncate create 0666 nikko nikko } -----
テスト
実際にログローテートするか確認する。
- dは実際にログを作らないためのオプション。
ログを作る場合は-dを外す。
# logrotate -dv /etc/logrotate.d/chkrootkit reading config file /etc/logrotate.d/chkrootkit reading config info for /var/log/chkrootkit.log Handling 1 logs rotating pattern: /var/log/chkrootkit.log after 1 days (30 rotations) empty log files are rotated, old logs are removed considering log /var/log/chkrootkit.log log does not need rotating
log does not need rotating
が出てログファイルを作成できない場合は
/var/lib/logrotate.status
の該当ログファイルの日付を昨日の日付に戻して再度実行。
本ファイルがログ実行した日付を管理している