[[Linux全般]]

~
*logrotate、ログローテーションのまとめ [#yd03e7ff]
ログをローテーションさせるにはlogrotateが必要です。~
以下に詳細を記載します。~
~
*各種ファイル場所 [#f8d8e25f]
設定メインファイル:基本このファイルを参照する。
 # /etc/logrotate.conf
Includeされる設定ファイル
 # /etc/logrotate.d/配下にあるファイル
 logrotate.confにIncludeするデフォルトのディレクトリが記述されており、上記ディレクトリ配下のファイルは全て読み込まれる。
 なお、Includeファイルの記述が優先的になるが、Includeファイルに記述されていない内容はlogrotate.confの内容が参照される。
~
*設定確認コマンド [#sf3206c8]
 # logrotate -dv 設定ファイル

*強制的にローテーション実行 [#gaf008ca]
 # logrotate -f ファイル

*各種オプションまとめ [#ie4944fb]

 rotate 数字 <--数字の分世代保存する。
 例:rotate 15 <--15世代分保存する。

 daily  <--毎日
 weekly <--毎週ログローテートを実施する
 yealy  <--毎年

 compress <--圧縮する
 delaycompress <--今の世代と一つ前の世代は圧縮せず、その前までを圧縮する

 dateext <--保存したファイル名にyyyymmddを付加する
 nodateext <--日付で保存せずに末尾に数字の連番を付加して保存する。

 ifempty <--ログファイルが空でも処理する
 notifempty <--ログファイルが空の場合は処理しない

 missingok ←指定されたログファイルが無くてもエラーを出さず処理続行
 sharedscripts ←複数のログファイルを指定している際は必要、これがないと複数ログファイルがローテーションされる際にpostrotate~endscriptが実行されてしまう


*トラブルシュート [#h745c578]
***エラー logrotate: ALERT exited abnormally with [1] [#a8626b59]
上記エラーがmessagesに記述されていると、ログがローテーションされていません。~
一度 logrotate -dv /etc/logrotate.conf を実行して、設定ファイルを確認した方が良いです。~
ローテーション対象のディレクトリが無い場合など、そのせいで全てのログがローテーションされないことになります。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS