How to turn on WCF tracing?

The following configuration taken from MSDN can be applied to enable tracing on your WCF service.

<configuration>
  <system.diagnostics>
    <sources>
      <source name="System.ServiceModel"
              switchValue="Information, ActivityTracing"
              propagateActivity="true" >
        <listeners>
             <add name="xml"/>
        </listeners>
      </source>
      <source name="System.ServiceModel.MessageLogging">
        <listeners>
            <add name="xml"/>
        </listeners>
      </source>
      <source name="myUserTraceSource"
              switchValue="Information, ActivityTracing">
        <listeners>
            <add name="xml"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
        <add name="xml"
             type="System.Diagnostics.XmlWriterTraceListener"
             initializeData="Error.svclog" />
    </sharedListeners>
  </system.diagnostics>
</configuration>

To view the log file, you can use “C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin\SvcTraceViewer.exe”.

If “SvcTraceViewer.exe” is not on your system, you can download it from the “Microsoft Windows SDK for Windows 7 and .NET Framework 4” package here:

Windows SDK Download

You don’t have to install the entire thing, just the “.NET Development / Tools” part.

When/if it bombs out during installation with a non-sensical error, Petopas’ answer to Windows 7 SDK Installation Failure solved my issue.

Leave a Comment