巨大なシステムログファイルが原因でサーバーがダンプします。そのような行size 100m
をファイル/etc/logrotate.d/rsyslog
に追加して、システムログのサイズを制限できると聞いたことがあります。
これで、私の/etc/logrotate.d/rsyslog
は次のようになります。
/var/log/syslog
{
rotate 7
daily
size 100m
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
私の質問は:size 100m
はrotate 7
とどのように連携しますか?
size 100m
、rotate 7
、およびdaily
を一緒に使用しない場合、システムログは毎日ローテーションされ、7日間分のバックログが保持されます。 size 100m
を追加し、一部の日次ログが100m
よりも大きい場合、すぐに回転しますか?その場合、毎日のログが大きくなりすぎると(700mb
を超える)1日で7つのバックログを取得する可能性があるということですか?
logrotate
メカニズムを使用してもsyslogファイルのサイズは制御されず、logrotateを実行するたびに毎日、現在の/var/log/syslog
ファイルを取得し、100MBytesを超える場合は、結果を圧縮して保存します。その後、新しい/var/log/syslog
ファイルが作成され、その時点からメッセージの受信が開始されます。