簡単な解決策が「ログファイル名に日付/時刻サフィックスを追加する(例:access.log.20210909.gz」)いいえ logrotate
基本動作?名前を変更する代わりにすべてのログファイルのファイル名回転するたびに(明らかに複雑です)?
つまり、logrotate
名前の変更を意味するソリューションを使用するのはなぜですか?ファイルごと時代ごとに与えられたファイルの名前を変更するだけの解決策がある場合一度だけその人生で?
ここには理由があるはずですが、まだ見たことはありません。
logrotate
例:Apacheの標準ルールを試してみましょう。
/var/log/apache2/access.log
/var/log/apache2/access.log.1
/var/log/apache2/access.log.2.gz
/var/log/apache2/access.log.3.gz
...
/var/log/apache2/access.log.100.gz
ログをリモートコンピュータにバックアップするには、次の手順を実行します。回転するたびにファイル名が変わるので、ファイルが再送信される危険性があります(バックアップソフトウェアによって異なります)。
また、これらの(継続的に変更された)ファイル名は日付について何も知らないため、人にとっては見やすくなりません。
logorate
このアプローチを使用することに欠点があるかどうかを尋ねます(まだ見たことがありません)。
/var/log/apache2/access.log
/var/log/apache2/access.log.20210908_0100.gz
/var/log/apache2/access.log.20210907_0100.gz
/var/log/apache2/access.log.20210906_0100.gz
...
?
ベストアンサー1
1 日の間に複数のログ回転を実行したい場合を除き、これには欠点はありません。この場合、パターンに時間を追加する必要があります。
また、毎日の回転がありますが、ファイルが大きすぎる場合を想像してみてください。このような回転ではエラーが発生します。