【问题标题】:How do I configure Log4Net to ignore 404 errors?如何配置 Log4Net 以忽略 404 错误?
【发布时间】:2011-07-30 23:47:59
【问题描述】:

Http 404 错误阻塞了我的日志文件。确实我需要解决 404 错误,但这样做本身就是一项任务。我将使用 Fiddler 之类的工具来查找 404,但我不希望它们被记录下来。

【问题讨论】:

    标签: asp.net logging exception-handling log4net


    【解决方案1】:

    404 作为 System.Web.HttpException 的实例被抛出。如果您在global.asax 中捕获/记录异常,那么这样的事情应该可以解决问题:

    protected void Application_Error( object sender , EventArgs e )
    {
      Exception     exceptionInstance = Server.GetLastError() ;
      HttpException httpException     = exceptionInstance as HttpException ;
      int?          httpStatusCode    = ( httpException != null ? httpException.GetHttpCode() : (int?)null ) ;
    
      if ( !httpStatusCode.HasValue || httpStatusCode != 404 )
      {
        LogExceptionHere() ;
      }
    
      return ;
    
    }
    

    如果您使用的是Elmah(而您是should be),则需要将其配置为忽略 web.config 中的 404。大致如下:

    <configuration>
      ...
      <elmah>
        ...
        <errorFilter>
          <test>
            <equal binding="HttpStatusCode" value="404" type="Int32" />
          </test>
        </errorFilter>
        ...
      </elmah>
      ...
    </configuration>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-27
      • 2012-09-18
      相关资源
      最近更新 更多