ログローテーションがうまくいかないとき

logarotateによるログローテーションがどうもうまくいかない、変なローテーションファイルが作成される、ログローテーションのテストでローテーション対象になるログができない、などちょっと困ってしまうことがあります。

ローテーションファイルのサフィックス(連番や日付)を途中で変更したときには、次のように変なローテーションファイルができてしまうことがあります。

-rw-r--r-- 1 root root  1366515  7月 13 17:15 2014 access_log
-rw-r--r-- 1 root root        0  7月 13 03:16 2014 access_log.1
-rw-r--r-- 1 root root 17375755  7月 13 03:15 2014 access_log.1.1
-rw-r--r-- 1 root root        0  7月 13 03:16 2014 access_log.2
-rw-r--r-- 1 root root  5301528  7月  6 03:15 2014 access_log.2.1
-rw-r--r-- 1 root root        0  7月 13 03:16 2014 access_log.3
-rw-r--r-- 1 root root    35937  6月 28 22:20 2014 access_log.3.1

そういうときには、/var/lib/logrotate.status の中身を確認しましょう。ログローテーションされたファイルと日にちが記録されています。本来ローテーションされるべきではなかったファイルの記録を整理整頓すると改善するでしょう。

このときは、/etc/logrotate.d/httpd の中で、ローテーション対象が *log* になっているというおまけの間違いがありました。

Comments are closed.