【问题标题】:WCF debugging not able to understandWCF调试看不懂
【发布时间】:2014-06-27 14:24:30
【问题描述】:

我正在尝试在生产服务器上调试自定义的自托管 WCF 服务(没有 Visual Studio,什么都没有……)我修改了 WCF 服务 web.config 并添加了跟踪侦听器,如here 所述,但我得到的都是这样的条目,没有意义

<E2ETraceEvent xmlns="http://schemas.microsoft.com/2004/06/E2ETraceEvent"> 
<System xmlns="http://schemas.microsoft.com/2004/06/windows/eventlog/system"> 
<EventID>524324</EventID> 
<Type>3</Type> 
<SubType Name="Verbose">0</SubType> 
<Level>16</Level> 
<TimeCreated SystemTime="2014-06-27T13:55:07.6585544Z"/> 
<Source Name="System.ServiceModel"/> 
<Correlation ActivityID="{00000000-0000-0000-0000-000000000000}"/> 
<Execution ProcessName="w3wp" ProcessID="4564" ThreadID="6"/> 
<Channel/> 
<Computer>SERVER-NAME</Computer> 
</System> 
<ApplicationData> 
<TraceData> 
<DataItem> 
<TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Verbose"> 
<TraceIdentifier>http://msdn.microsoft.com/en-GB/library/System.ServiceModel.GetConfigurationSection.aspx</TraceIdentifier> 
<Description>Get configuration section.</Description> 
<AppDomain>/LM/W3SVC/2/ROOT/selfiehostie-1-1304834290733034307</AppDomain> 
<ExtendedData xmlns="http://schemas.microsoft.com/2006/08/ServiceModel/StringTraceRecord"> 
<ConfigurationSection>system.serviceModel/serviceHostingEnvironment</ConfigurationSection> 
</ExtendedData> 
</TraceRecord> 
</DataItem> 
</TraceData> 
</ApplicationData> 
</E2ETraceEvent>

我遇到的错误

获取 500 和响应的前 1024 个字节,是否有可能获取更多字节才能看到真正的错误?

上面的详细错误是什么意思?

如何找出 WCF 服务失败的原因?

【问题讨论】:

  • 您查看过服务器上的事件查看器吗? 500 错误的原因可能会显示在那里。
  • @Tim yup,事件查看器中没有错误,即使我通过猜测并修复了内部问题,但仍然不确定如何在没有猜测的情况下找到它

标签: c# wcf


【解决方案1】:

您是否尝试过在 Microsoft 服务跟踪查看器中查看 Trace.svclog 文件? 这种方式通常更容易定位错误,并且以紧凑的形式显示信息。

如果您不能使用该工具 - 尝试在跟踪中查找 &lt;Exception&gt; 标记。

500 server error 通常表示服务器端的一些错误,例如服务器抛出异常。

编辑: 您还可以尝试增加最大记录消息大小:

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

【讨论】:

  • 我什至尝试过服务工具,但也不例外,只有 500 错误,我知道这是我想找出的服务器上的错误,谢谢 :-)
  • 谢谢,我添加了诊断,得到更多信息但仍然没有错误相关信息
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-21
  • 2015-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多