如何配置 Log4Net 以忽略 404 错误?

发布于 2024-10-30 22:56:49 字数 93 浏览 1 评论 0原文

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

Http 404 errors are clogging up my log files. It's true I need to resolve the 404 errors, but doing so is a task in and of itself. I will use a tool like Fiddler for hunting down the 404's but I do not want them logged.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

云朵有点甜 2024-11-06 22:56:50

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 (还有你 应该是),您需要在 web.config 中将其配置为忽略 404。沿着这些思路:

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

a 404 is thrown as an instance of System.Web.HttpException. If you are trapping/logging exceptions in global.asax, something like this should do the trick:

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 ;

}

If you're using Elmah (and you should be), you need to configure it to ignore 404s in your web.config. Something along these lines:

<configuration>
  ...
  <elmah>
    ...
    <errorFilter>
      <test>
        <equal binding="HttpStatusCode" value="404" type="Int32" />
      </test>
    </errorFilter>
    ...
  </elmah>
  ...
</configuration>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文