シーケンシャル ファイルの無制限のセットを生成したいSystem.Diagnostics.EventSchemaTraceListener
ので、TraceLogRetentionOption.UnlimitedSequentialFiles
. ただし、トレース出力は、複数の順次ファイルではなく、1 つのファイルに書き込まれました。
この特定のログ保持オプションの使用に関する公式または非公式のドキュメントまたはコード サンプルはありますか? それに失敗した場合、以下のコードは何らかの形で間違っていますか?
魔法の設定を減らすために、コードですべてを行います。初期化されるはずの方法は次のとおりです。
TraceSource ts = new TraceSource("My trace source", SourceLevels.All);
SourceSwitch sourceSwitch = new SourceSwitch("SourceSwitch", "Verbose");
ts.Switch = sourceSwitch;
ts.Listeners.Add(new System.Diagnostics.EventSchemaTraceListener(
"event.log", // "file name"
"eventschema", // "name"
1024, // buffer in bytes - I set this to be <= maximum file size
TraceLogRetentionOption.UnlimitedSequentialFiles,
1024); // max. file size in bytes - very small to illustrate the concept
そして、私はそれに数回ログインします:
for (var i = 0; i < aFew; i++) {
ts.TraceData(
TraceEventType.Information, // trace level
100, // event ID: arbitrary integer
"some data to output");
}
単一のevent.log
ファイルが作成され、期待されるすべての情報が含まれていることを確認しましたTraceLogRetentionOption
が、単一のファイルのサイズが指定された最大 1kB を超えているため、尊重されていません。
私は何を間違っていますか?