如何启用跟踪

以下配置说明如何启用 WCF 跟踪。 具体而言,它说明如何进行以下操作:

  • 在服务和传输层上记录消息以检查线上的原始 XML。

  • 启用 WCF 异常跟踪,以捕获消息安全标头处理中的错误。

  • 启用摘要日志记录,从而允许检查规范化摘要以帮助了解签名验证异常。

  • 启用活动跟踪,以帮助关联消息并确定引发异常的阶段。

有关详细信息,请参阅 WIF 跟踪

<configuration> <system.serviceModel> <diagnostics> <messageLogging maxMessagesToLog="30000" logEntireMessage="true" logMessagesAtServiceLevel="true" logMalformedMessages="true" logMessagesAtTransportLevel="true"> </messageLogging> </diagnostics> </system.serviceModel> <system.diagnostics> <sources> <!-- This section turns on digest logging, note that for this to work correctly, you need to add the following to machine.config: <system.serviceModel> <machineSettings enableLoggingKnownPii="true" /> </system.serviceModel> Search for 'DigestTrace' in the trace viewer to view the digest logs. --> <source name="System.IdentityModel" switchValue="Verbose" logKnownPii="true"> <listeners> <add name="xml" /> </listeners> </source> <!-- Log all messages in the 'Messages' tab of SvcTraceViewer. --> <source name="System.ServiceModel.MessageLogging"> <listeners> <add name="xml" /> </listeners> </source> <!-- ActivityTracing and propogateActivity are used to flesh out the 'Activities' tab in SvcTraceViewer to aid debugging. --> <source name="System.ServiceModel" switchValue="Error, ActivityTracing" propagateActivity="true"> <listeners> <add name="xml" /> </listeners> </source> <!-- This records Microsoft.IdentityModel generated traces, including exceptions thrown from the framework. --> <source name="Microsoft.IdentityModel" switchValue="Warning"> <listeners> <add name="xml" /> </listeners> </source> </sources> <sharedListeners> <add name="xml" type="System.Diagnostics.XmlWriterTraceListener" initializeData="trace.e2e" /> </sharedListeners> <trace autoflush="true" /> </system.diagnostics> </configuration>