web-dev-qa-db-ja.com

logrotateに存在しない空のファイルをスキップさせる方法

次のような問題があります。ときどき、アプリケーションサーバーが空のログファイルを吐き出すか(週末の場合)、ログファイルがまったくありません。

これらのログファイルの管理にはlogrotateを使用しますが、どちらの場合も、logrotateは、rt-ticket binとNagiosを乱雑にしているため、空のログファイルまたは存在しないログファイルのローテーションの試行をスキップします。

Logrotateでこれを行う方法はありますか(もちろん、それを正確に行うスクリプトを書くことができます(空で存在しないonces_をスキップしますが、それは私の質問ではありません)

2
Willem Noorduin

これらの2つのlogrotate.confオプションはあなたを助けるかもしれません:

missingokログファイルが欠落している場合は、エラーメッセージを発行せずに次のログファイルに進みます。 nomissingokも参照してください。

notifemptyログが空の場合はローテーションしないでください(これはifemptyオプションをオーバーライドします)。

詳細については、man logrotateを参照してください。

6