I was somewhat confused by some of the trace messages I was getting back from a simple Indigo service and client I've been playing with so I tried various combinations of config attribute values to see what results I'd get.
I using the diagnostics element under system.serviceModel and playing with just three of the attributes on the child messageLogging element;
<system.serviceModel>
<diagnostics>
<messageLogginglogEntireMessage ="xs:boolean"
logMessagesAtServiceLevel ="xs:boolean"
logMessagesAtTransportLevel ="xs:boolean" />
</diagnostics>
</system.serviceModel>
Setting logEntireMessage='true' gives you the SOAP body as well as the message headers. Setting logEntireMessage='false' only logs the SOAP headers.
Setting logMessagesAtTransportLevel = 'true' gives you what actually gets sent over the wire.
Setting logMessageAtServiceLevel='true' gives you what the Message object looks like by the time your service code is running. For my simple service, these trace messages have headers that are NOT present in the transport level messages (wsa:To/wsa:Action).
It looks like you have to set at least one of the latter two attributes to 'true' in order to get trace messages to be generated.
Oh, and the log messages appear in
%WINDIR%\System32\LogFiles\Messages
There are more sophisticated ways of configuring Indigo to generate trace information, the above just covers a simple bare bones way of getting trace messages.
Posted
May 09 2005, 10:26 AM
by
martin-gudgin