Recommended Settings for Debugging
For debugging environment, choose Information
or Verbose
, along with ActivityTracing
for either a user-defined or System.ServiceModel
trace source. To enhance debugging, you should also add an additional trace source (System.ServiceModel.MessageLogging
) to the configuration to enable message logging. Notice that the switchValue
attribute has no impact on this trace source. If you want to disable the trace source, you should use the logMessagesAtServiceLevel
, logMalformedMessages
, and logMessagesAtTransportLevel
attributes of the messageLogging
element instead.
The following example demonstrates the recommended settings, using a shared listener that utilizes the XmlWriterTraceListener
.
<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="C:\logs\Traces.svclog" />
</sharedListeners>
</system.diagnostics>
<system.serviceModel>
<diagnostics wmiProviderEnabled="true">
<messageLogging
logEntireMessage="true"
logMalformedMessages="true"
logMessagesAtServiceLevel="true"
logMessagesAtTransportLevel="true"
maxMessagesToLog="3000"
/>
</diagnostics>
</system.serviceModel>
</configuration>