Suppose I have a configuration file that looks like this: ...
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Warning,ActivityTracing" propagateActivity="true">
<listeners>
<add name="ServiceModelTraceListener" />
</listeners>
</source>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="ServiceModelTraceListener" />
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="LogServer.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="ServiceModelTraceListener" />
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>
When using this configuration file, every action that the caller performs against the service and every corresponding message sent to the service will be logged in the svclog file. Everything is still fine.
If I change the third line from the above list to <source name="System.ServiceModel" switchValue="Warning" propagateActivity="true">(is deleted ActivityTracing), only those actions that are at least marked with a level warning are logged. But it is still registered in every message ...
, , , ? , , , , , !