Logrotateを実際にローテーションせずに使用して、ディレクトリ内のログファイルを削除することは可能ですか?次の形式でログを生成するアプリがあります:app.log.DD_MM_YYYY。 logrotateに次の設定があると失敗します:
/opt/log/app/app.log.* {
rotate 0
missingok
nomail
}
ログローテーションはこれを行うことができますか、それともスクリプトを作成してそれをcron内に配置するだけですか?
ベスト、-イリアン
その場合、postrotateを使用することをお勧めします。以下の例では、postrotateはログがローテーションされてから1日より古いファイルを削除します。ニーズに合わせて自由に変更してください。
/opt/log/app/app.log.* {
missingok
nomail
postrotate
/usr/bin/find /opt/log/app/ -name "app.log.*" -type f -mtime +0 -exec rm {} \;
endscript
}
Logrotateの目的は、カスタムの時間間隔でログファイルのカスタム数を維持することです。タスクにはcronを使用します。ここでlogrotateを使用して実行できることの詳細: http://www.jamescoyle.net/cheat-sheets/676-logrotate-cheat-sheet