由于ASP.NET MVC 4和WebAPI存在问题,请参阅link:
MVC 4 Web API - CreateResponse(status, object) causes HTTP 500
我需要检测内部Web API管道,看看发生了什么。
我该怎么做?
由于
路
**更新**
我现在已经实现了一个ITraceWriter,现在我可以看到TraceRecord上有一个Exception属性,我可以转储甚至可以解决这个问题。
谢谢,我想回答这个问题。
更多信息:
http://www.asp.net/web-api/overview/testing-and-debugging/tracing-in-aspnet-web-api
答案 0 :(得分:4)
您可以为整个堆栈启用所有级别的跟踪(从基本的“信息”跟踪)。
如果您使用其中一个流行的库(即nLog),您可以根据需要轻松将其全部写入文件或事件日志。
只需用您的自定义类替换默认的ITraceWriter:
GlobalConfiguration.Configuration.Services.Replace(typeof(ITraceWriter), new NLogger());
您将看到各种内部跟踪消息填满日志。
我在这里发表了http://www.strathweb.com/2012/06/using-nlog-to-provide-custom-tracing-for-your-asp-net-web-api/
的博客答案 1 :(得分:0)
您是否尝试过设置:
GlobalConfiguration.Configuration.IncludeErrorDetailPolicy = IncludeErrorDetailPolicy.Always;
This是关于Web API中的错误处理和跟踪的好文章。