Elmah wird nur verwendet, um unbehandelt Ausnahmen zu protokollieren. Das heißt, Ausnahmen, die sonst zu einem gelben Bildschirm des Todes führen würden. Es hat auch einen sehr schönen Log-Viewer, aber letztendlich wird es nur für die Ausnahmeprotokollierung verwendet.
Serilog kann alles tun, was Elmah kann, mit Ausnahme des eingebauten Viewers (kein Wortspiel beabsichtigt). Es gibt jedoch viele Möglichkeiten, Ihre Ausnahmen anzuzeigen.
Serilog wird auch tracing oder "Ereignisprotokollierung" tun, was Elmah nicht tun wird (standardmäßig gibt es Möglichkeiten, Elmahs Infrastruktur dafür zu verwenden).
Schließlich erhalten Sie nicht die Struktur der Serilogs Protokollierung mit Elmah. Sie erhalten nur flache Logfiles.
Sie können beide verwenden, wenn Sie möchten, aber ich würde lieber nur einen Ausnahme-Handler konfigurieren, um sich bei Serilog einzuloggen.
FYI, serilog kann zu Elmah anmelden.
http://blog.elmah.io/logging-to-elmah-io-from-serilog/
Es gibt einen guten Blog-Eintrag auf der Website Elmah über den Unterschied zwischen Elmah und Log4net. Viele der gleichen Gründe treffen auf Serilog zu, obwohl es natürlich auch Serlogs strukturierte Protokollierung gibt, die Sie mit keinem von beiden erhalten würden.
http://blog.elmah.io/elmah-vs-log4net/
Auch trotz der Tatsache, dass ich verknüpft haben, elmah.io nicht verwechselt werden. Es gibt zwei Versionen von Elmah. Einer ist frei (und Open Source), der andere ist nicht (obwohl teilweise Open Source). Elmah.io ist Cloud-basiert und nicht kostenlos. Elmah ist immer noch Open Source und kostenlos.
http://code.google.com/p/elmah/
Ein schneller Zeiger. Serilog kann nicht mit ELMAH integriert werden. Wir (bei elmah.io) bieten eine Serilog-Senke für elmah.io, aber keine anderen Arten von ELMAH-Fehlerprotokollierern. Während elmah.io die Schweregrade von Serilog unterstützt, tut ELMAH selbst (und sollte es auch nicht tun). – ThomasArdal
ELMAH unterstützt die manuelle Fehlerprotokollierung aus der Box: http://blog.elmah.io/how-to-log-errors-to-elmah-programmatically/ – ThomasArdal
@ThomasArdal - das ist immer noch ein Ausnahme-Handler, nicht Ablaufverfolgung und Ereignisprotokollierung .. –