Подтвердить что ты не робот

Служба WCF: как найти журналы сервера, чтобы понять ошибку?

Я знаю, что это, вероятно, довольно простой вопрос, но я новичок в создании WCF и сервисов. Я запускаю локальную службу WCF с помощью Microsoft VS 2010 С# 4. Я пытаюсь запустить службу через URL через простую привязку и запустить методы PUT и GET через URL. Я получаю:

. Подробнее см. Журналы сервера.

при попытке сделать запрос на обслуживание. Как найти эти журналы сервера?

4b9b3361

Ответ 1

Запись не обязательно включена. Трассировка и ведение журнала необходимо включить в конфигурации WCF (app.config или web.config). Вы можете сделать это вручную или щелкнув app.config, а затем выбрав Изменить конфигурацию WCF. Если этот элемент не отображается в контекстном меню (это происходит в старых версиях VS), вы можете найти его в меню VS Tools или запустить его вручную (SvcConfigEditor.exe).

По умолчанию сообщения регистрируются в файлах в каталоге, из которого запускается приложение. Вы можете отредактировать это в редакторе конфигурации после включения ведения журнала. Редактор позволит вам указать путь к файлу после включения ведения журнала или трассировки.

WCF Configuration Editor

Впоследствии вы можете использовать средство Microsoft Service Trace Viewer для просмотра файлов, как больших XML файлов, и не являющихся дружественными пользователю. Инструмент Viewer должен появиться сам после того, как вы дважды щелкните файлы журнала, или вы можете запустить его вручную (SvcTraceViewer.exe).

enter image description here

Ответ 2

Добавьте это в свой web.config. вы указываете, где журнал входит в атрибут initializeData tracelistener

<system.serviceModel>
    <diagnostics>
        <messageLogging logEntireMessage="true" logMalformedMessages="true" logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true" />
    </diagnostics>
</system.serviceModel>
<system.diagnostics>
    <sources>
        <source name="System.ServiceModel" switchValue="Information, ActivityTracing" propagateActivity="true">
            <listeners>
                <add name="traceListener" type="System.Diagnostics.XmlWriterTraceListener" initializeData="C:\Temp\SvcLog\Traces.svclog" />
            </listeners>
        </source>
    </sources>
</system.diagnostics>