C# Sentry没有记录ASP.NET MVC站点的404错误
我已经成功地将SharpRaven连接到MVC和Web API控制器上,以记录和捕获错误,但无法记录和捕获404个错误 我试图通过C# Sentry没有记录ASP.NET MVC站点的404错误,c#,asp.net-mvc,error-logging,sentry,C#,Asp.net Mvc,Error Logging,Sentry,我已经成功地将SharpRaven连接到MVC和Web API控制器上,以记录和捕获错误,但无法记录和捕获404个错误 我试图通过Application\u Error这样做: public class MvcApplication : System.Web.HttpApplication { RavenClient _RavenClient; protected void Application_Start() { _RavenClient = new
Application\u Error
这样做:
public class MvcApplication : System.Web.HttpApplication
{
RavenClient _RavenClient;
protected void Application_Start()
{
_RavenClient = new RavenClient(ConfigurationManager.AppSettings["RavenClient:DNS"]);
...
}
protected void Application_Error(object sender, EventArgs e)
{
_RavenClient.Capture(new SentryEvent(Server.GetLastError()));
}
}
如果我在\u RavenClient.Capture(…)
上设置断点,我可以看到捕获的错误,但是这里捕获的404个错误在
如果我禁用其他控制器集成,则命中这行代码的非404异常也是如此
你知道这为什么不能完全发挥作用吗?是否有更好的方法可以这样做,从而有更好的工作机会?如果我在
应用程序\u Error
方法本身中需要时创建RavenClient
,那么一切都可以按需工作。似乎在应用程序\u Start
中创建客户端,然后在以后使用时一定会出现问题
这是我修改过的工作代码:
protected void Application_Error(object sender, EventArgs e)
{
new RavenClient(ConfigurationManager.AppSettings["RavenClient:DNS"])
.Capture(new SentryEvent(Server.GetLastError()));
}