Frage

Ich verwende ELMAH die Ausnahmen in meinem ASP.Net MVC-Projekt zu handhaben. Ich möchte es verwenden, um Fehler wie Datenbankverbindungszeit, Abfrage der Verbindungszeit und andere loggen sein. Ist dies möglich mit ELMAH?

War es hilfreich?

Lösung

Wenn Sie die Ausnahme propagieren, um die Elmah Web-Modul lassen wird es automatisch diese Ausnahmen protokolliert.

Sie können jedoch programmatisch direkt an Elmah einzuloggen, gibt es ein paar Möglichkeiten, dies zu tun:

Sie können in Code in Ihrer catch-Klausel Code verwenden:

try{....}
catch(Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); }

Eine andere Möglichkeit, dies zu tun, ist dies:

Elmah.ErrorLog.GetDefault(HttpContext.Current).Log(new Elmah.Error(ex));

Ich würde jedoch wickeln diesen Code in eine generische Schnittstelle IErrorLogger Stil, so dass Ihre untere Ebene Code muss nicht eine harte Abhängigkeit von Elmah haben sich

Andere Tipps

Ich weiß nicht, ob es mit ELMAH (nie benutzt), aber Sie können alle tun, dass mit den MS Ent Libs, die in hohem Maße konfigurierbar sind.

http://msdn.microsoft.com/en-us/library /cc467894.aspx

http://entlib.codeplex.com/wikipage?title=EntLib5%20Beta1

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