I'm using ELMAH to handle the exceptions in my ASP.Net MVC project. I would like to use it to log errors like database connection timeout, query connection timeout and others. Is this possible with ELMAH?
A:
I don't know if it is with ELMAH (never used it) but you can do all that with the MS Ent Libs, which are highly configurable.
Adrian K
2010-03-05 03:15:35
He's already using ELMAH....suggesting he change his entire approach isn't a great call when it does indeed already do what he wants.
Nick Craver
2010-03-05 03:17:19
+1
A:
If you let the exception propogate out to the Elmah Web Module it will automatically log these exceptions.
You can however programatically log directly to Elmah, there are a couple of ways to do this:
You can use code like this in your catch clause in code:
try{....}
catch(Exception ex) { Elmah.ErrorSignal.FromCurrentContext().Raise(ex); }
Another way of doing this is this:
Elmah.ErrorLog.GetDefault(HttpContext.Current).Log(new Elmah.Error(ex));
I would however wrap this code into a more generic IErrorLogger style interface so that your lower level code doesn't need to have a hard dependency on Elmah itself
saret
2010-03-05 10:50:04