October 01, 2007

Debugging WCF

Make changes shown below in App.config or wcf.config file and use log viewer tool at C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin\SvcTraceViewer.exe to check App_tracelog.svclog file.

<?xml version="1.0" encoding="utf-8" ?>

<configuration>
<
system.diagnostics>
<
sources>
<
source name="System.ServiceModel.MessageLogging" switchValue="Verbose,ActivityTracing">
<
listeners>
<
add type="System.Diagnostics.DefaultTraceListener" name="Default">
<
filter type="" />
</
add>
<
add name="ServiceModelMessageLoggingListener">
<
filter type="" />
</
add>
</
listeners>
</
source>
<
source name="System.ServiceModel" switchValue="Verbose,ActivityTracing" propagateActivity="true">
<
listeners>
<
add type="System.Diagnostics.DefaultTraceListener" name="Default">
<
filter type="" />
</
add>
<
add name="ServiceModelTraceListener">
<
filter type="" />
</
add>
</
listeners>
</
source>
</
sources>
<
sharedListeners>
<
add initializeData="C:\MyLog\App_messages.svclog"
type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp">
<
filter type="" />
</
add>
<
add initializeData="C:\MyLog\App_tracelog.svclog"
type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ServiceModelTraceListener" traceOutputOptions="Timestamp">
<
filter type="" />
</
add>
</
sharedListeners>
<
trace autoflush="true" />
</
system.diagnostics>
<
appSettings>
<
add key="wcfServiceHostEndpoint" value="http://localhost:8000/MyAsm.IWcfServiceHost, MyAsm" />
</
appSettings>
<
system.serviceModel>
<
diagnostics performanceCounters="All">
<
messageLogging logEntireMessage="true" logMessagesAtServiceLevel="true"
maxSizeOfMessageToLog="10485760" />
</
diagnostics>
</
system.serviceModel>
</
configuration>