将tracelistener添加到web.config

Xaq*_*ron 18 asp.net logging web-config tracelistener

我想在网站上使用以下代码.config sections我应该添加哪个web.config来将输出记录到文件或Windows事件日志中?

using System.Diagnostics;

// Singleton in real code
Class Logger
{
   // In constructor: Trace.AutoFlush = false;

   public void Log(message)
   {
       String formattedLog = formatLog(message);
       Trace.TraceInformation(formattedLog);
       Trace.Flush();
   }
}
Run Code Online (Sandbox Code Playgroud)

Tar*_*asB 24

你应该使用system.diagnostics部分.以下是来自MSDN的文本文件示例:

<configuration>
  <system.diagnostics>
    <trace autoflush="false" indentsize="4">
      <listeners>
        <add name="myListener" 
          type="System.Diagnostics.TextWriterTraceListener" 
          initializeData="TextWriterOutput.log" />
        <remove name="Default" />
      </listeners>
    </trace>
  </system.diagnostics>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这适用于系统事件日志:http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlogtracelistener.aspx

  • 使用asp.net登录到Windows事件日志并不是直接的,因为它需要管理权限. (3认同)