Logrotateが週に1回ジョブを実行するLAMPサーバーがあり、一部のログが非常に大きくなる傾向があることに気付きました。たとえば、Apacheアクセスログは73MBです。 logrotateに毎日ローテーションするように指示したほうがいいですか?サイズはパフォーマンス(CPU負荷)にとって重要ですか、それともわずかな違い(毎日と毎週のローテーション)について話しているのですか?
ファイルシステムはext3です。
ログファイルのサイズによってパフォーマンスが影響を受けるApacheWebサーバーは見たことがありません。一部の非常に古いサーバーでは、ログファイルが2GBに達すると、Apacheが機能しなくなります。
73MBは小さいです。
Webサーバーのログファイルを毎日ローテーションすることを決定すると便利です(読みやすさ、awstatsなどのツールとの組み合わせが簡単です...)
4,000,000MBの容量のハードドライブを購入できることを考えると、 73MBのログファイルは本当に小さいです。 logrotateにファイルを1日1回ローテーションさせ、さまざまな分析のために1週間から1か月を維持します。そのサイズのサーバーの他の部分(CPU、RAMなど)に目立った違いはありません。
測定したことはありませんが、ログサイズによるパフォーマンスへの影響は少ないと思います。 BufferedLogsをオンにしている場合は、ある程度のメモリが必要です。それ以外の場合は、ディスクへの順次書き込みのみです。 Apacheが多数のランダムディスクアクセス(多数のイメージを提供するなど)を行う場合は、外部ログサーバーを試して、ログ書き込みのiowaitを最小限に抑えてください。また、デバッグロギングレベルでは、ログは非常に速く成長します。重要でない場合は、情報に変更してください。乾杯
ほとんどの場合(ログファイルの最後にデータを追加する場合)、ファイルの大きさは関係ありません(512MBのRAMマシンで数十ギガになり、目に見える速度低下は見られません。/varパーティションがいっぱいでした:))
/ varパーティションが小さい場合、ログファイルが大きい場合(73MBは比較的小さい)、またはアーカイブ/処理のために毎日のログが必要な場合は、毎日のローテーションを使用する必要があります。ログを処理しない場合、またはログを最後に追加する以外は何もしない場合(Apacheのように)、ログをローテーションする頻度は関係ありません。/varのすべてのスペースを使い果たしないように注意してください。ログがない場合よりも大きな問題が発生する可能性があるためです。