**logrotateの設定と使い方 [#mfe48015]
#Contents
**ディレクトリ構成 [#fe1811e3]
OS標準のlogrotateは以下の設定ファイルを使用して稼動している。~
-本体の動作設定
/etc/logrotate.conf
-サービス毎の動作設定
/etc/logrotate.d/
**設定手順 [#w30044fc]
1. サービス用のログローテート設定ファイルを作成~
2. 設定ファイルを/etc/logrotate.d/に配置~
**パラメータ [#nbeb3ced]
-動作制御
|missingok|ファイルが存在しなくても処理を続行|
|notifempty|ログファイルが空の場合はローテートしない|
|compress|ローテートしたファイルをgzip圧縮する|
|rotate N|Nに指定した回数のローテートを行う|
|create [権限] [所有者] [グループ]|ローテート後の空ファイル生成|
|sharedscripts|複数のログを対象に|
|postrotate|処理終了時に実行するスクリプトの記述開始位置|
|endscript|スクリプトの記述終了位置|
~
-ローテーション期間の指定
|daily|日次|
|weekly|週次|
|monthly|月次|
**設定例1. (apache weekly 24rotate compress) [#g634460b]
/home/httpd/default/logs/access.log {
weekly
compress
rotate 24
postrotate
/etc/init.d/apachectl graceful
endscript
}
**設定例2. (apache daily 40rotate compress) [#g94d1664]
/home/httpd/default/logs/access.log {
daily
compress
rotate 40
postrotate
/bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null || true
endscript
}
**設定例3. (apache *log monthly 24rotate(2year) compress) [#h46b1c20]
/home/httpd/default/logs/*.log {
monthly
compress
rotate 24
postrotate
/etc/init.d/apachectl graceful
endscript
}