Trace 和 Debug 共享相同Listener

Trace 和 Debug 的唯一区别是当程序编译到一个发布本版时,默认状态下不包括Debug语句,但是包括Trace语句。用Trace跟踪程序时不需重新编译。

IndentSize,IndentLevel,Unindent 用于控制错误消息在写入是的缩进

DefaultTraceListener:
EventLogTraceListener:将信息写入EventLog对象,在写入前先要创建一个EventLog或指定到一个一有事件日志
TextWriteTraceListener:将输出写入Stream对象或TextWriter对象,Console.Output是TextWriter

可通过 Trace.Flush() 或 Trace.AutoFlush=True 将缓冲区中信息写入文件

EventLog mylog = new EventLog("Debug Log");
mylog.Source="Trace output";
EventLogTraceListener myListener = new EventLogTraceListener(myLog);

在创建 BooleanTrace 或 TraceSwtich 的实力时实用两个参数,一个是DisplayName(配置文件中的相关名字),另一个是Description

TraceLevel.Off            0
TraceLevel.Error         1      TraceSwitch.TraceError
TraceLevel.Warning    2      TraceSwtich.TraceWarning
TraceLevel.Info           3      TraceSwitch.TraceInfo
TraceLevel.Verbose    4      TraceSwitch.TraceVerbose
当设置了一个级别的TraceSwitch后,比其级别低的属性都返回True

配置Trace开关
1Trace 和 Debug 和 Trace开关<system.diagnostics>
2Trace 和 Debug 和 Trace开关   <swtiches>
3Trace 和 Debug 和 Trace开关      <add name="myBooleanSwitch" value="0" />
4Trace 和 Debug 和 Trace开关      <add name="myTraceSwitch" value="4" />
5Trace 和 Debug 和 Trace开关   </switches>
6Trace 和 Debug 和 Trace开关</system.disgnostics>

相关文章: