WCF Web 服务关键跟踪

WCF web service Critical Trace

我有一个要跟踪的 WCF 服务。我已经在 Web.Config 文件中设置了下一行:

   <system.diagnostics>
      <sources>
            <source name="System.ServiceModel" 
                    switchValue="Critical, ActivityTracing"
                    propagateActivity="true">
            <listeners>
               <add name="traceListener" 
                   type="System.Diagnostics.XmlWriterTraceListener" 
                   initializeData= "C:\Logs\MyCriticalTraces.svclog" />
            </listeners>
         </source>
      </sources>
   </system.diagnostics>

如您所见,我只想要关键消息,但文件非常大(每 5 分钟 40 Mb)。它在几分钟内变得越来越大。 如果我查看该文件,我会看到很多消息,但 none 似乎是 Critical。

我只想跟踪严重错误,否则文件将无法移动或打开。 对此有什么想法吗?

抱歉,我只是从某个论坛复制粘贴了跟踪代码,但不知道自己在做什么。然后我意识到选项 switchValue 是错误的。我的意思是,我不需要 ActivityTracing 日志。所以行

switchValue="Critical, ActivityTracing"

应该是:

switchValue="Critical"

所以结果是这样的:

   <system.diagnostics>
      <sources>
            <source name="System.ServiceModel" 
                    switchValue="Critical"
                    propagateActivity="true">
            <listeners>
               <add name="traceListener" 
                   type="System.Diagnostics.XmlWriterTraceListener" 
                   initializeData= "C:\Logs\MyCriticalTraces.svclog" />
            </listeners>
         </source>
      </sources>
   </system.diagnostics>