C# 有没有办法追踪WCF中的所有异常?
如何在WCF中启用对任何异常的跟踪(不管是否已处理)?以下是我配置的代码:C# 有没有办法追踪WCF中的所有异常?,c#,.net,wcf,exception,trace,C#,.net,Wcf,Exception,Trace,如何在WCF中启用对任何异常的跟踪(不管是否已处理)?以下是我配置的代码: <system.diagnostics> <sources> <source name="System.ServiceModel" switchValue="Error,ActivityTracing" propagateActivity="true"> <listeners> <add type
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Error,ActivityTracing"
propagateActivity="true">
<listeners>
<add type="System.Diagnostics.DefaultTraceListener" name="Default">
<filter type="" />
</add>
<add name="ServiceModelTraceListener">
<filter type="" />
</add>
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="tracelog.svclog"
type="System.Diagnostics.XmlWriterTraceListener"
name="ServiceModelTraceListener" traceOutputOptions="DateTime, Timestamp, Callstack">
<filter type="" />
</add>
</sharedListeners>
</system.diagnostics>
但是我尝试在SvcTraceViewer中查看任何异常,我没有看到异常。如何在跟踪日志中获取异常?
提前谢谢 我看不出您的配置中有明显的问题,但我使用的就是这个,而且我确实在Svc跟踪查看器中看到异常:
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information, ActivityTracing" propagateActivity="true">
<listeners>
<add name="XTL" />
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="trace.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="XTL" />
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>
您能告诉我SvcTraceViewer中可以看到异常的位置吗?@kseen-在“活动”视图中,您应该可以看到列表中的红色项目。单击其中一个后,右侧面板将显示表示异常的特定跟踪,包括红色跟踪,以及详细信息和堆栈框架。不适用于异常自定义行为扩展?“不管它是否已处理…”-这是什么意思?显然,如果在OperationContract的实现中处理异常,WCF基础设施将永远看不到它,因此WCF不可能记录它。我的意思是,在中处理的异常可以尝试{}catch{}
块。