WCF诊断“logEntireMessage”在已部署环境中保持打开状态
我有一个WCF服务暴露在.NET3.5中 需要时,我使用诊断记录消息和活动。这是我的密码: 以下定义了要记录的消息:WCF诊断“logEntireMessage”在已部署环境中保持打开状态,wcf,trace,Wcf,Trace,我有一个WCF服务暴露在.NET3.5中 需要时,我使用诊断记录消息和活动。这是我的密码: 以下定义了要记录的消息: <system.serviceModel> <diagnostics> <messageLogging logEntireMessage="true" logMalformedMessages="true" logMessagesAtServiceLevel="true"
<system.serviceModel>
<diagnostics>
<messageLogging
logEntireMessage="true"
logMalformedMessages="true"
logMessagesAtServiceLevel="true"
logMessagesAtTransportLevel="true"
maxMessagesToLog="3000000"
maxSizeOfMessageToLog="20000000"/>
</diagnostics>
</system.serviceModel>
以下内容指定了登录到的位置:
<system.diagnostics>
<trace autoflush="true" indentsize="4" />
<sources>
<!-- Source for tracing WCF activities. -->
<source name="System.ServiceModel" switchValue="Information, ActivityTracing">
<listeners>
<add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener"
initializeData="ActivityLog.svclog" />
</listeners>
</source>
<!-- Source for tracing WCF messages (content). -->
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="messageListner" type="System.Diagnostics.XmlWriterTraceListener"
initializeData="MessageLog.svclog" />
</listeners>
</source>
</sources>
</system.diagnostics>
当我将源代码注释掉时,它显然不会登录到文件中
我的问题是,我是否可以将diagnostics元素保留在那里,或者我是否应该将其注释掉?它在部署时是否会影响性能/任何东西?我认为这不会产生任何影响,因为它需要在任何诊断发生之前构建侦听器