跟踪wcf服务

时间:2013-09-16 09:26:24

标签: c# wcf logging trace system.diagnostics

<system.diagnostics>
    <sources>
        <source name="System.ServiceModel"
                switchValue="Error, ActivityTracing"
                propagateActivity="true">
            <listeners>
                <add name="traceListener"
                     type="System.Diagnostics.XmlWriterTraceListener"
                     initializeData= "c:\logs\Traces.svclog" />
            </listeners>
        </source>
    </sources>
</system.diagnostics>

嗨,我使用此配置部分来跟踪WCF服务中的错误,但是当我打开我的svclog文件时,我可以看到该服务上的所有活动。如何仅记录svclog文件中的错误。

2 个答案:

答案 0 :(得分:1)

从switchValue属性

中删除“ActivtiyTracing”
<system.diagnostics>
    <sources>
      <source name="System.ServiceModel"
              switchValue="Error"
              propagateActivity="true">
        <listeners>
          <add name="traceListener"
              type="System.Diagnostics.XmlWriterTraceListener"
              initializeData= "c:\logs\Traces.svclog" />
        </listeners>
      </source>
    </sources>
  </system.diagnostics>

答案 1 :(得分:1)

您可以通过设置Switch属性来控制跟踪:

 <configuration>
 <system.diagnostics>
    <switches>
       <add name="mySwitch" value="4" />
    </switches>
 </system.diagnostics>

相应的值是:

    Trace Level

Off : 0
Error : 1
Warning : 2
Info : 3
Verbose : 4

在MSDN上,您会找到更多解释

TraceLevel Enumeration