11

I have ELMAH set up for a webapp, logging exceptions to a SQL server.

I wish to have ELMAH send me an email too, but only when a specific exception is thrown (ie. MySpecialException).

ELMAH must still log all exceptions to SQL server.

I know you can do it programmatically in global.asax, but I'd prefer to use web.config.

So, how do I restrict ELMAH error mails to filter out everything but a specific exception type, using web.config?

UPDATE

The filter ended up looking like this:

<test>
    <and>
        <not>
            <is-type binding="Exception" type="MyApp.MySpecialException" />
        </not>
        <regex binding="FilterSourceType.Name" pattern="mail" caseSensitive="false"/>
    </and>
</test>
Sir Code-A-Lot
  • 595
  • 6
  • 16

1 Answers1

7

Its certainly possible to do. Check out the filtering documentation for elmah.

In particular look at the section Filtering By Source

<elmah>
...
<errorFilter>
    <test>
        <and>
            <equal binding="HttpStatusCode" value="404" type="Int32" />
            <regex binding="FilterSourceType.Name" pattern="mail" />
        </and>
    </test>
</errorFilter>

Joel Cunningham
  • 13,620
  • 8
  • 43
  • 49
  • Have looked at the documentation. Afraid I need more help than that. I'm stuck at this: .. which does not work. – Sir Code-A-Lot May 31 '10 at 10:59
  • This could be for a number of reasons. Have you added ErrorFilterModule to the HttpModules? Might be an idea to add all of your elmah configuration to your post. – Joel Cunningham May 31 '10 at 11:43
  • 3
    This question may also help. http://stackoverflow.com/questions/1788900/filter-on-exception-text-in-elmah – Joel Cunningham May 31 '10 at 12:08