PHPローリングログライブラリ
PHP のログを記録する方法として、年と月ごとにフォルダーを分割し、日ごとにファイルを分割する方法を見つけました。この方法には利点と欠点があり、その使用シナリオについて説明します。今日は別のロギング方法です。ファイルローリング方式はログを記録します。もちろん、このローリングメカニズムは以前のロギング方式に追加することもできます。
ログをスクロールさせる方法
ローリング ログは、名前が示すように、一連のログ ファイルを使用してモジュールのログを記録します。同じモジュール内のファイル数は maxNum までに制限され、サイズも maxSize バイトまでに制限されます。ファイル名には、testlog .log、testlog_1.log、testlog_2.log、、、、、などの特定の命名方法があり、testlog.log は、testlog.log ファイルのサイズに達したときの使用中のログ ファイルです。 maxSize を制限すると、以下に示すように、ログ ファイルは逆方向にロールされます:
コードをコピーします コードは次のとおりです:
テストログ_2.ログ -> テストログ_3.ログ
;
テストログ_1.ログ -> テストログ_2.ログ
;
testlog.log -> testlog_1.log
テストログ.ログ #0kb
ログ ファイルの数が制限 maxNum に達すると、削除メカニズムが開始され、最も古いログが削除されます。たとえば、maxNum が 10 に設定されている場合、この時点で testlog.log を含む最大 10 個のファイルが存在します。スクロール時に testlog_9.log が存在する場合、testlog_8.log からローリングが開始され、testlog_9.log が上書きされます。これにより、ログ システムが正常に動作し、非常に大きなログ ファイルが表示されなくなります。
コードの実装
例を見てみましょう
#この例では、ログ レベルは msg に設定され (この時点ではデバッグ情報は記録されません)、ログ ファイルの数は 5、サイズは 200 バイト (テストに便利)、ファイル名は testlog です。
この例を継続的に実行すると、コードが配置されているフォルダーに次のような 5 つのファイルが生成されます。
リーリー