我试图了解追踪(Tracing)是如何工作的。
我创建了一个简单的新 Web 项目。这是我正在使用的代码:
// Create a trace listener for the event log.
EventLogTraceListener myTraceListener = new EventLogTraceListener("myEventLogSource");
// Add the event log trace listener to the collection.
Trace.Listeners.Add(myTraceListener);
// Write output to the event log.
Trace.WriteLine("Test output");
我正在参考这个msdn链接获取帮助。
我的web.config中的设置如下:
<system.diagnostics>
<trace autoflush="false" indentsize="4">
<listeners>
<add name="myListener"
type="System.Diagnostics.EventLogTraceListener"
initializeData="TraceListenerLog" />
</listeners>
</trace>
</system.diagnostics>
然而,当我运行这段代码时,我不知道这个日志记录发生在哪里。我检查了事件查看器,在“应用程序和服务日志”下,我期望会有一个名为“myEventLogSource”的新日志被创建,但这并没有发生。
请问有人能够解释一下这是如何工作的吗?
autoflush
更改为true
时会发生什么?或者是Trace
类的AutoFlush
属性。另外,写入后也可以调用Flush
。此外,XML配置可避免您需要在代码中创建/配置侦听器。 - Adam Houldswortheventcreate /ID 1 /L APPLICATION /T INFORMATION /SO myEventLogSource /D "Created myEventLogSource"
。 - adrianm