每天使用 TraceSource 写入新的日志文件
本文关键字:日志 文件 天使 TraceSource 每天 | 更新日期: 2023-09-27 18:36:11
我在应用程序中使用记录器来写入文件。源、开关和侦听器已在 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);
我必须做什么才能每天创建一个新的日志文件,而不是每次都写入同一个日志文件?
我必须做什么才能每天创建一个新的日志文件,而不是每次都写入同一个日志文件?
您必须创建自己的跟踪侦听器,而不是使用TextWriterTraceListener
。 这将允许TraceListener
实现每天更改日志文件,或执行所需的任何其他自定义行为。
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>