2

クライアントであるX509によって保護されたWCFサービスがあり、期待どおりに機能しています。

サーバーサイドでメッセージをログに記録し、復号化されたメッセージを表示しようとしています。しかし、私がログに記録しているのは暗号化されたメッセージです。

logMessagesAtServiceLevel="true"を設定しました。構成の問題を見つけるのを手伝ってください。

構成は次のとおりです。

 <system.serviceModel>

.. service definition here...

<diagnostics>
  <messageLogging
       logEntireMessage="true"
       logMalformedMessages="false"
       logMessagesAtServiceLevel="true"
       logMessagesAtTransportLevel="false"
       maxMessagesToLog="3000"
       maxSizeOfMessageToLog="2000"/>
</diagnostics>
</system.serviceModel>

<system.diagnostics>
<sources>
  <source name="System.ServiceModel"
      switchValue="Verbose, ActivityTracing"
      propagateActivity="true" >
    <listeners>
      <add name="xml" />
    </listeners>
  </source>
  <source name="System.ServiceModel.MessageLogging"
      switchValue="Verbose">
    <listeners>
      <add name="xml" />
    </listeners>
  </source>
  <source name="Microsoft.IdentityModel"
      switchValue="Verbose">
    <listeners>
      <add name="xml" />
    </listeners>
  </source>
</sources>
  <sharedListeners>
  <add name="xml"
     type="System.Diagnostics.XmlWriterTraceListener"
     initializeData="c:\log\Traces.svclog" />
</sharedListeners >
<trace autoflush="true" />
</system.diagnostics>
</configuration>
4

2 に答える 2

1

暗号化されたメッセージを表示するには、logMessagesAtTransportLevel=trueを設定します

于 2012-05-28T20:18:05.770 に答える
1

完成のために、

私の質問で与えられたのと同じ構成が機能しました。しかし、私は次のようにmaxsizeofmessagetologを増やす必要がありました

maxSizeOfMessageToLog = "200000"

于 2012-05-29T05:44:23.003 に答える