ログの回転設定では、特定のログファイルに対して回転が0に設定されています。しかし、ファイルのサイズに達すると、代わりにapplication.log.1
を削除してください。回転が0に設定されても、古いファイルを回転させないでログを記録する
ドキュメントごとに、回転を0に設定するとファイルが削除されるはずです。なぜこれが起こっていますか?私はまた、ログの回転は1時間ごとに実行するように設定されていると言う必要がありますが、ログファイルは1時間以内にサイズに達します。したがって、logrotateが1時間ごとに実行されると、old application.log.1
が削除され、現在のapplication.log
がapplication.log.1
にロールオーバーされ、新しいapplication.log
ファイルが作成されます。ファイルの 設定は以下のようになります。
/var/log/application.log
{
rotate 0
weekly
size 256M
missingok
notifempty
copytruncate
compress
delaycompress
sharedscripts
postrotate
reload rsyslog >/dev/null 2>&1 || true
/usr/sbin/scalyr-agent-2 stop
/usr/sbin/scalyr-agent-2 start
endscript
}
「最初に直接/ dev/nullにログオンするのはなぜですか?」最新のログを保持したいが、古いログを保持する必要はないからです。特に何かが起きている間に 'tail -f'でログを見たいかもしれませんが、履歴ログは必要ありません。 – Thayne
@thayne意味がある。 –