【问题标题】:Unable to log Code 500 Errors in ELMAH无法在 ELMAH 中记录代码 500 错误
【发布时间】:2010-08-22 04:33:09
【问题描述】:

在 IIS 7 中运行的 ASP.NET 4.0 MVC 项目中,我设置并配置了 ELMAH 以在我的站点上记录错误。但是,我无法获得关于代码 500 错误的任何报告。

我设置了一个简单的控制器来创建除零异常,但 ELMAH 没有记录它。我可以让 ELMAH 很好地记录其他消息,并且我没有在 ErrorLog_Filtering 中过滤掉任何异常。

此外,为了显示自定义页面,我更新了 web.config 的 httpErrors 部分,如下所示:

<customErrors mode="RemoteOnly" defaultRedirect="~/error/GenericError">
  <error statusCode="403" redirect="~/error/AccessDenied" />
  <error statusCode="404" redirect="~/error/NotFound" />
  <error statusCode="500" redirect="~/error/Offline" />
  <error statusCode="501" redirect="~/error/Offline" />
  <error statusCode="503" redirect="~/error/Offline" />
</customErrors>

<system.webServer>
    <httpErrors errorMode="DetailedLocalOnly" >
        <error statusCode="403" prefixLanguageFilePath="" path="/error/AccessDenied" responseMode="ExecuteURL" />
        <error statusCode="404" prefixLanguageFilePath="" path="/error/NotFound" responseMode="ExecuteURL" />
        <error statusCode="500" prefixLanguageFilePath="" path="/error/GenericError" responseMode="ExecuteURL" />
        <error statusCode="501" prefixLanguageFilePath="" path="/error/GenericError" responseMode="ExecuteURL" />
        <error statusCode="503" prefixLanguageFilePath="" path="/error/Offline" responseMode="ExecuteURL" />

最后,在查看应用程序日志文件时,代码 500 错误消息不会显示在那里。

是否有我遗漏的配置,或者我自己不小心捕获了错误并且没有让它传播?

【问题讨论】:

    标签: asp.net-mvc-2 iis-7 elmah


    【解决方案1】:

    您需要在FilterConfig.cs 中删除RegisterGlobalFilters() 中添加过滤器HandleErrorAttribute 的行。更多详情请见this question

    【讨论】:

    猜你喜欢
    • 2013-06-12
    • 1970-01-01
    • 1970-01-01
    • 2016-10-12
    • 2011-03-01
    • 2012-03-04
    • 2019-09-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多