Frage

Gibt es eine Möglichkeit, um Filter Ausnahmen in elma die Ausnahmemeldung mit?

Beispiele:
„System.Web.HttpException: Zeitüberschreitung der Anforderung.“ Ich will nicht alle Httpexception, um herauszufiltern, sondern nur die timed-out-Anfragen.
"System.Web.HttpException: Maximale Anforderungslänge überschritten."

Was ich will nicht zu tun ist, eigenen Code schreiben dafür. So ist es möglich, dies mit der buildin-web.config Konfiguration?

zu tun

Danke!

War es hilfreich?

Lösung

Ja, Sie können. Verwenden Sie einfach einen regulären Ausdruck, um die Nachricht zu befragen. Siehe das Beispiel unten für Details, wie die Ausnahmemeldung zu vergleichen.

<errorFilter>
  <test>
    <!-- http://groups.google.com/group/elmah/t/cbe82cee76cc6321 -->
    <and>
      <is-type binding='Exception'
               type='System.Web.HttpException, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' />
      <regex binding='Exception.Message'
             pattern='invalid\s+viewstate'
             caseSensitive='false' />
      <regex binding='Context.Request.UserAgent'
             pattern='Trident/4(\.[0-9])*'
             caseSensitive='false' />
    </and>
  </test>
</errorFilter>

Andere Tipps

Sie können einen Event-Handler in Ihrer global.asax eingerichtet, um hässliche Konfiguration regex Einstellungen zu vermeiden:

void ErrorMail_Filtering(object sender, Elmah.ExceptionFilterEventArgs e) 
{     
    if (e.Exception.Message.Contains("Request timed out"))
        e.Dismiss(); 
}

Siehe Fehler Filterung .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top