执行ASP.NET或Windows事件日志速率限制吗?
问题描述:
我正在测试ASP.NET MVC中的一些错误处理,但我的例外每分钟只能记录一次(至少看起来是这样)。执行ASP.NET或Windows事件日志速率限制吗?
我的customErrors打开:
<customErrors mode="On" defaultRedirect="~/Home/Error">
和我删除了HandleErrorAttribute全局滤波器。我的控制器和操作没有HandleError属性。
我有抛出一个异常,像这样的控制器操作:
public ActionResult Test()
{
var random = new Random();
throw new Exception(random.Next().ToString());
}
但是,如果我去这个页面多次(不能只是刷新,因为它重定向)我只看到在Windows事件1事件日志每分钟。我尝试从另一个浏览器打到同一页面,并且该异常也未记录。
是否有某种由ASP.NET或Windows事件日志完成的速率限制?
答
速率限制由ASP.NET根据minInterval对System.Web/healthMonitoring /规则的属性来完成/添加和在Web.config
https://msdn.microsoft.com/library/23t1tcty%28v=vs.100%29.aspx对System.Web/healthMonitoring /简档/添加元素
为了登录您可以添加这个到Web.config所有错误(source):
<system.web>
<healthMonitoring>
<rules>
<!-- Make sure all errors are logged to the EventLogProvider ("Default" profile only allows 1 error per minute) -->
<remove name="All Errors Default" />
<add name="All Errors Default" eventName="All Errors" profile="Critical" provider="EventLogProvider" />
</rules>
</healthMonitoring>
</system.web>
稍微偏离主题,但我建议['安装,包装Elmah.MVC']( http://nuget.org/packages/Elmah.MVC) – 2012-07-19 14:09:48
是的,我已经在这里投了。现在,我看到我们是否可以删除自定义事件日志记录代码,以便自动让框架和Windows日志异常。 – 2012-07-19 14:13:00