WCF message logging and tracing

Recently, I wan't to enable WCF message logging for troubleshooting. However, the configuration posted on MSDN site doesn't work for me, neither log file was generated nor error returned.

Finally, I tried a lucky configuration section from my collegue. Then, all things comes back, the settings which didn't work earlier works very well now. It is relly weird.

The lucky section:

<configuration>
  <system.serviceModel>
    <diagnostics>
      <messageLogging maxMessagesToLog="30000" 
                      logEntireMessage="true" 
    logMessagesAtServiceLevel="true"
    logMalformedMessages="true" 
    logMessagesAtTransportLevel="true">
    </messageLogging>
    </diagnostics>
  </system.serviceModel>
  <system.diagnostics>
    <sources>
      <source name="System.ServiceModel" 
              switchValue="Verbose, ActivityTracing"
        propagateActivity="true" >
        <listeners>
          <add name="xml" />
        </listeners>
      </source>
      <source name="System.ServiceModel.MessageLogging" 
              switchValue="Verbose">
        <listeners>
          <add name="xml" />
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add name="xml" 
           type="System.Diagnostics.XmlWriterTraceListener" 
    initializeData="C:\service.svclog" />
    </sharedListeners>
    <trace autoflush="true" />
  </system.diagnostics>
</configuration>
原文地址:https://www.cnblogs.com/LeoTang/p/2685213.html