У меня есть некоторая ошибка с моими услугами WCF.WCF Trace и Message Logging не записывают файлы журнала на стороне хоста (сервера) сервера
Мне нужно определить, что происходит, поэтому я попытался включить ведение журнала трассировки.
Я выполнил предписанные правила и использовал wcf configuration editor для настройки трассировки и ведения журнала сообщений как на моем клиенте, так и на сервере.
Tracing отлично работает на стороне клиента, но сообщения имеют ограниченное применение в этом случае, так как они просто показывают, что реальная авария была на сервере, и я должен проверить журналы сервера:
ошибка при получении ответа HTTP на http://localhost:24162/MembershipService.svc. Это может быть связано с привязкой конечной точки службы , не использующей протокол HTTP. Это также может быть связано с тем, что контекст HTTP-запроса прерывается сервером (возможно, из-за отключения службы). Для получения более подробной информации см. Журналы сервера.
Я бег в режиме отладки, так что сервер в этом случае сервер разработки asp.net на порт 24162.
Моей диагностика раздел web.config хозяина услуг:
<system.diagnostics>
<sources>
<source propagateActivity="true" name="System.ServiceModel" switchValue="Verbose,ActivityTracing">
<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="Verbose,ActivityTracing">
<listeners>
<add type="System.Diagnostics.DefaultTraceListener" name="Default">
<filter type="" />
</add>
<add name="ServiceModelMessageLoggingListener">
<filter type="" />
</add>
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="C:\Logs\web_tracelog.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ServiceModelTraceListener" traceOutputOptions="Timestamp">
<filter type="" />
</add>
<add initializeData="C:\Logs\web_messages.svclog" type="System.Diagnostics.XmlWriterTraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
name="ServiceModelMessageLoggingListener" traceOutputOptions="Timestamp">
<filter type="" />
</add>
</sharedListeners>
<trace autoflush="true" />
и участок system.serviceModel
<system.serviceModel>
<diagnostics>
<messageLogging logEntireMessage="true" logKnownPii="true" logMalformedMessages="true"
logMessagesAtServiceLevel="true" logMessagesAtTransportLevel="true" />
<endToEndTracing propagateActivity="true" activityTracing="true"
messageFlowTracing="true" />
</diagnostics>
</system.serviceModel>
Каталог «C: \ Logs» существует, и я дал полный контроль «Everyone». Я также проверил, что константа TRACE определена, чтобы быть уверенным.
Как вы можете видеть, я пытаюсь захватить все и все, что может предложить журнал трассировки/сообщений. Вообще ничего. Но, увы, я ничего не получаю, нада, зильч.
После рассмотрения существующих вопросов на этом сайте и значительного количества поисковых запросов, следуя некоторым рекомендациям (убедитесь, что папка существует, проверяя, что у пользователя есть соответствующие разрешения в папке), я не чувствую себя ближе к пониманию, почему мой трассировка не записывает файлы. Любые предложения по устранению неполадок в протоколе трассировки? Есть ли какая-либо информация, зарегистрированная где-то в другом месте, которая указывает, почему трассировка не работает?
для справки и будущих читателей -
Я пошел here инструкции по настройке ведения журнала трассировки службы. Я пошел here и here, чтобы попытаться устранить неполадки в файлах журнала, которые не записываются.
Спасибо, я отметил ваш ответ, хотя у меня все еще есть проблемы, так как у меня нет лучшего ответа ... – Erikest