Rails で運用しているサービスのログをローテートする方法
運営している某サービスが落ちていてあせったのだが、なんのことはない、約3年間そのままだった Rails の production.log が超巨大ファイルになっていたのが原因でした。
Log Rotation for Phusion Passenger | overstimulate
で紹介されている通りに設定し、ログを毎日ローテートするようにしました。
以下の内容で、/etc/logrotate.d/passenger というファイルを作成、
/home/deploy/app/shared/log/*.log {
daily
missingok
rotate 30
compress
delaycompress
sharedscripts
postrotate
touch /home/deploy/app/current/tmp/restart.txt
endscript
}
ちゃんとローテートするかどうかは、
% sudo logrotate -f /etc/logrotate.d/passenger
で確認できます。
設定ファイルの各パラメーターは、最初に紹介したリンク先で詳しく解説されているのでそちらを参照してください。
2010/04/16 01:41:58