4

アプリケーションでロガーを使用してファイルに書き込みます。ソース、スイッチ、およびリスナーは、app.config ファイルで次のように定義されています。

  <system.diagnostics>
    <sources>
      <source name="LoggerApp" switchName="sourceSwitch" switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="myListener.log" />
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="sourceSwitch" value="Information" />
    </switches>
  </system.diagnostics>

内部では、私の .cs コードで、ロガーを次のように使用します。

private static TraceSource logger = new TraceSource("LoggerApp");
logger.TraceEvent(TraceEventType.Information, 1, "{0} : Started the application", DateTime.Now);

毎回同じログ ファイルに書き込むのではなく、毎日新しいログ ファイルを作成するにはどうすればよいですか?

4

2 に答える 2

4

毎回同じログ ファイルに書き込むのではなく、毎日新しいログ ファイルを作成するにはどうすればよいですか?

を使用する代わりに、独自のTraceListenerを作成する必要がありますTextWriterTraceListener。これにより、TraceListener実装でログ ファイルを毎日変更したり、その他のカスタム動作を実行したりできます。

于 2012-06-04T16:42:59.537 に答える
-1
Try use:

<system.diagnostics>
    <sources>
      <source name="LoggerApp" switchName="sourceSwitch" switchType="System.Diagnostics.SourceSwitch">
        <listeners>
          <add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="myListener-{0:dd}-{0:MM}-{0:yyyy}.log" />
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="sourceSwitch" value="Information" />
    </switches>
  </system.diagnostics>
于 2014-07-21T12:24:33.530 に答える