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开关
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开关
1<system.diagnostics>
2 <swtiches>
3 <add name="myBooleanSwitch" value="0" />
4 <add name="myTraceSwitch" value="4" />
5 </switches>
6</system.disgnostics>
2 <swtiches>
3 <add name="myBooleanSwitch" value="0" />
4 <add name="myTraceSwitch" value="4" />
5 </switches>
6</system.disgnostics>