即使我在机器级web.config中的healthMonitoring元素中设置了enabled =“false”,asp.net也会捕获未处理的异常,并在Windows事件日志中执行该条目。
那么,你能告诉我吗?我们可以在机器级启用/禁用运行状况监控吗?
感谢您的回答。
答案 0 :(得分:1)
我认为当发生任何未处理的异常时,这是任何ASP.NET网站的正常行为。
如果您没有使用代码处理它,或者至少为非现有资源提供404页面,则该事件将冒泡到WIndows事件日志。
您可以使用以下任何方法来阻止Windows事件日志列出您的例外。
1-创建自定义404和500错误页面,并在web.config中将customErros模式设置为TRUE。
<CustomErrors mode="On">
2-使用Global.ASAX
中的Application_Errors
处理程序来捕获错误
3-在控制器代码中使用[HandleError]
属性,让它使用您的自定义错误页面并吞下错误,而不会将其暴露给Windows事件日志。