production.logのローテート
RedmineなどRuby on Railsで開発されたアプリケーションがlogディレクトリに出力するproduction.logは、定期的にローテートを行わないとどんどんサイズが大きくなります。
logroatedによるローテート処理
LinuxでRedmineを稼働させている場合、logroatedを使ってこの処理を行うことができます。
/etc/logroate.d/以下に以下の内容のファイルを作成しておくと、Redhat系ディストリビューションの場合は日曜日の早朝にログがローテートされるようになります。
logroatedの設定例
(Redmineのインストールディレクトリが/var/lib/redmineの場合)
/var/lib/redmine/log/*log {
missingok # ファイルが存在しなくてもエラーににない
notifempty #
copytruncate # ログを別名でコピーした後、元のファイルの内容を空にする
compress # 古いログを圧縮して保存する
}
logrotatedの設定オプション
ローテート方法
| copytruncate | ログをコピーした後、元ファイルを空にする |
| create mode owner group | ログの名前を変更した後、新たにログファイルを作成する |
ローテート間隔
| daily | 日ごと |
| weekly | 週ごと |
| monthly | 月ごと |

