多个ELMAH过滤条件

时间:2011-03-29 09:11:23

标签: model-view-controller elmah

我想知道是否有一种方法可以编写ELMAH来过滤掉以下逻辑中的错误记录:

如果错误是favicon.ico 上的404错误,则/1.xml 错误为404 错误为{{1}上的错误为404 }

我已经找到了在/2.xml上执行此操作的方法,如下所示:

favicon.ico

但由于某种原因,我无法理解如何为 <errorFilter> <test> <and> <equal binding="HttpStatusCode" value="404" type="Int32" /> <regex binding="Context.Request.ServerVariables['URL']" pattern="/favicon\.ico(\z|\?)" /> </and> </test> </errorFilter> 条件做到这一点。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:4)

以下应该可以解决问题,或者让你开始:

<errorFilter>
  <test>
    <and>
      <equal binding="HttpStatusCode" value="404" type="Int32" />
      <or>
        <regex binding="Context.Request.ServerVariables['URL']" 
               pattern="/favicon\.ico(\z|\?)" />
        <regex binding="Context.Request.ServerVariables['URL']" 
               pattern="/[1-2]\.xml(\z|\?)" />
      </or>
    </and>
  </test>
</errorFilter>

基本上,这将过滤HTTP状态代码为404 的错误,其中一个正则表达式模式在or元素下分组,与请求URL匹配。