Как увидеть SOAP-запрос и ответ в трассировке WCF - PullRequest
0 голосов
/ 09 декабря 2018

Я включил SwitchValue = All, а также Activity и Information.

Также включен Messaging.

Все еще не повезло, я не смог увидеть запрос и ответ мыла.В каком-то случае я вижу исключение или сообщение.

Я хочу увидеть значения "Все входы", которые являются запросом мыла.А также SOAP Response.Чего мне не хватает?

Ответы [ 2 ]

0 голосов
/ 10 декабря 2018

Попробуйте добавить следующую конфигурацию в файл web.config.

    <system.diagnostics>
    <sources>
      <source name="System.ServiceModel.MessageLogging">
        <listeners>
          <add type="System.Diagnostics.XmlWriterTraceListener" name="xmlLog" initializeData="myLogs.svclog"/>
        </listeners>
      </source>
    </sources>
  </system.diagnostics>
  <system.serviceModel>
    <diagnostics>
      <messageLogging logEntireMessage="true" logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="false" />
    </diagnostics>
  </system.serviceModel>

Не стесняйтесь сообщить мне, если проблема все еще существует.

0 голосов
/ 10 декабря 2018

ссылка

Это то, что я использую в своей веб-конфигурации:

добавьте это или его вариант в узел system.servicemodel:

<diagnostics wmiProviderEnabled="true">
  <messageLogging
       logEntireMessage="true"
       logMalformedMessages="true"
       logMessagesAtServiceLevel="true"
       logMessagesAtTransportLevel="true"
       maxSizeOfMessageToLog="102400000"
       maxMessagesToLog="10000" />
</diagnostics>

Затем добавьте этот узел (вам не нужно использовать часть регистрации ошибок, не нужна):

<system.diagnostics>
    <trace autoflush="true" />
    <sources>
        <source name="DefaultSource" switchName="DefaultSwitch">
            <listeners>
                <add name="FileLog"/>
            </listeners>
        </source>
        <source propagateActivity="true" name="System.ServiceModel" switchValue="Warning">
            <listeners>
                <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                    <filter type="" />
                </add>
                <add name="ServiceModelTraceListener">
                    <filter type="" />
                </add>
            </listeners>
        </source>
        <source name="System.ServiceModel.MessageLogging" switchValue="Warning, ActivityTracing">
            <listeners>
                <add type="System.Diagnostics.DefaultTraceListener" name="Default">
                    <filter type="" />
                </add>
                <add name="ServiceModelMessageLoggingListener">
                    <filter type="" />
                </add>
            </listeners>
        </source>
    </sources>
    <switches>
        <add name="DefaultSwitch" value="Information" />
    </switches>
    <sharedListeners>
        <add initializeData="C:\logs\TraceLogs\Web_tracelog_messages.svclog"
            type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
            name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp">
            <filter type="" />
        </add>
        <add initializeData="C:\logs\TraceLogs\Web_tracelog_errors.svclog"
          type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
          name="ServiceModelTraceListener" traceOutputOptions="Timestamp">
            <filter type="" />
        </add>
        <add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="something.web"/>
    </sharedListeners>
</system.diagnostics>
...