停止Elmah在ASP.Net MVC中动态记录日志

时间:2018-12-27 11:22:27

标签: asp.net-mvc elmah error-logging elmah.mvc

我通过在我的一个应用程序中使用this文章实现了Elmah日志记录错误,并且运行正常。

现在,根据要求,我必须停止动态记录日志错误,该错误将由用户处理,无论是用户运行日志错误还是不通过简单地在web.config中进行设置。

但是我不知道如何动态停止它,我也阅读了this文章,但是我无法停止记录错误。

我有什么需要丢失的东西吗?

1 个答案:

答案 0 :(得分:1)

根据您链接到的stackoverflow答案中的建议,您可以从ErrorLog中注释掉Web.config元素。这不会禁用日志记录(如已接受的答案所建议),而是切换为使用ELMAH中的内存记录器。这会将所有错误记录在内存中,这不会减慢安装速度。如果要完全删除错误日志记录,可以在Web.config中注释掉所有与ELMAH相关的模块。

如果您想要切换,我已经在ELMAH Tutorial中进行了描述。创建新的应用程序设置:

<add key="ELMAH:disable" value="false" />

然后在您的Global.asax.cs文件中添加以下代码:

void ErrorLog_Filtering(object sender, ExceptionFilterEventArgs e)
{
    if (bool.Parse(ConfigurationManager.AppSettings["ELMAH:disable"]))
        e.Dismiss();
}
相关问题