了解Trace如何在C#中工作
我试图了解跟踪是如何工作的
我创建了一个简单的新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中的设置如下
但是,当我运行此代码时,我不知道这个日志记录发生在哪里我检查了事件查看器,在“应用程序和服务日志”下,我期望创建一个名为“myEventLogSource”的新日志但是没有发生。
请任何人解释我这是如何工作的。
在Application log下,检查是否有两个写入Application日志的Source,一个是TraceListenerLog,另一个是myEventLogSource。 不会创建新日志,它们都将使用应用程序日志。 如果要创建新日志并且想要将跟踪输出写入其中,可以这样做(当然,日志名称不必等于源名称):
string logSource = "_myEventLogSource"; if (!EventLog.SourceExists(logSource)) EventLog.CreateEventSource(logSource, logSource); EventLogTraceListener myTraceListener = new EventLogTraceListener(logSource); // Add the event log trace listener to the collection. System.Diagnostics.Trace.Listeners.Add(myTraceListener); // Write output to the event log. System.Diagnostics.Trace.WriteLine("Test output");
即使源不存在,跟踪信息也会写入应用程序日志下的事件日志,并带有您传递给EventLogTraceListener构造函数的源名称。