2015-06-08 17 views
7

Ho implementato Serilog per un progetto ASP.NET MVC che verrà ospitato in Azure e Serilog fornisce i sink per accedere allo spazio di archiviazione di Azure.Serilog, Elmah o entrambi per un progetto ASP.NET MVC?

Ho poi voluto un modo migliore per gestire le eccezioni e corse in questo articolo molto informativo sull'integrazione ASP.NET MVC con Elmah - http://www.hanselman.com/blog/ELMAHErrorLoggingModulesAndHandlersForASPNETAndMVCToo.aspx

mi piace che Elmah consente di visualizzare le eccezioni e ha modi per notificare gli amministratori quando si verificano eccezioni. Dato che ho già Serilog, dovrei sostituirlo con Elmah o usarlo in combinazione con esso?

risposta

12

Elmah viene utilizzato solo per registrare non gestito eccezioni. Cioè, eccezioni che altrimenti risulterebbero in una schermata gialla della morte. Ha anche un bel visualizzatore di registri, ma alla fine è usato solo per la registrazione delle eccezioni.

Serilog può fare tutto ciò che Elmah può fare, con l'eccezione (nessun gioco di parole) del visualizzatore incorporato. Tuttavia, ci sono molti modi per visualizzare le eccezioni.

Serilog farà anche tracciare o "registrazione degli eventi", che Elmah non farà (per impostazione predefinita, ci sono modi per utilizzare l'infrastruttura di Elmah per fare questo).

Infine, non si ottiene la struttura di registrazione di Serilog con Elmah. Ottieni solo file di log piatti.

È possibile utilizzare entrambi, se si desidera, ma preferirei semplicemente configurare un gestore di eccezioni per accedere a Serilog.

FYI, serilog può accedere a Elmah.

http://blog.elmah.io/logging-to-elmah-io-from-serilog/

C'è un buon blog sul sito web Elmah circa la differenza tra Elmah e Log4net. Molte delle stesse ragioni si applicano a Serilog, anche se ovviamente c'è anche la registrazione strutturata di Serlog che non si otterrebbe con nessuno di questi.

http://blog.elmah.io/elmah-vs-log4net/

Inoltre, nonostante il fatto che ho collegato a elmah.io, non essere confuso. Ci sono due versioni di Elmah. Uno è gratuito (e open source), l'altro non lo è (anche se parzialmente open source). Elmah.io è basato su cloud e non è gratuito. Elmah è ancora open source e gratuita.

http://code.google.com/p/elmah/

+1

Un puntatore veloce. Serilog non si integra con ELMAH. Noi (su elmah.io) offriamo un sink Serilog per elmah.io, ma non altri tipi di logger ELMAH. Mentre elmah.io supporta le severità di Serilog, ELMAH non lo fa (e non dovrebbe farlo neanche). – ThomasArdal

+0

ELMAH supporta la registrazione manuale degli errori fuori dalla scatola: http://blog.elmah.io/how-to-log-errors-to-elmah-programmatically/ – ThomasArdal

+0

@ThomasArdal - che è ancora un gestore di eccezioni, non la traccia e la registrazione degli eventi .. –

Problemi correlati