Welches Protokoll-Dienstprogramm ist gut für die .NET-Anwendung in C # (ASP.NET, WinForms)? [geschlossen]

StackOverflow https://stackoverflow.com/questions/2107546

  •  22-09-2019
  •  | 
  •  

Frage

Ich versuche, einige der besten Protokoll Dienstprogramme für .NET-Framework, wie Microsoft Enterprise Library zu bewerten, Log4Net, Elmah.

Kann jemand, der bereits durch diese Übung gegangen ist in Listing Vor-und Nachteilen zu meiner Hilfe auf dem Markt der besten verfügbaren kommen würde.

Danke & Grüße, Rajeev Ranjan Lall

War es hilfreich?

Lösung

Im Allgemeinen gut ist Log4net .

PROS: Log4Net unterstützt viele Ausgabequellen
. CONTRA:. Manchmal Ihre Anwendung verlangsamen

Für die Anwendung ASP.NET ist der beste ELMAH .

PROS: Sie müssen keine Anwendung Code ein wenig ändern Elmah zu verwenden. Sie haben zu zählen nur in Ihrer Anwendung.
CONTRA:. Nicht, dass ich weiß,

Andere Tipps

Ich habe auch gute Dinge gehört über NLog obwohl ich noch nicht getestet haben. Sie sagen, die API zu dem von log4net bereitgestellt ähnlich ist.

Auch durch SO Suchen Sie haben eine Menge Fragen mit diesem Problem:

https: // Stackoverflow .com / Fragen / 98080 / what-is-the-best-Logging-Lösung-für-ac-net-3-5-Projekt

.NET Logging-Framework

Fehlerprotokollierung in C #

Hope, das hilft.

Werfen Sie einen Blick auf meinem Logging-Framework . Einfach zu verwenden. Einfach zu konfigurieren. Leicht zu verlängern.

Und hören, was dieser Kerl sagt .

log4net für Windows Forms, log4net und ELMAH für ASP.NET.

ELMAH und log4net haben verschiedene Zwecke. ELMAH erfasst Daten über nicht behandelte Ausnahmen während log4net einen Rahmen in konfigurierbaren Ebenen Protokollierung bietet (INFO, WARN, DEBUG, FATAL). log4net erfordert, dass Sie aktiv in Ihrem Code Logging-Anweisungen schreiben; ELMAH funktioniert automatisch, sobald richtig konfiguriert ist.

Elmah ist die beste. Elmah rock!

Enterprise Library ist die einzige formale Ausgabe Ich habe Erfahrung mit, und unser Team fand es zu umständlich und Vielseitigkeit für Prime-Time fehlt. Sie können es sicher vermeiden und würde wahrscheinlich besser am Ende aus, anstatt eine eigene Lösung Codierung.

Ich hatte nicht die Möglichkeit, entweder Log4Net oder Elmah zu verwenden.

Ich habe meine eigenen benutzerdefinierten zu verwenden, EntLib, log4net und dann Elmah

Für asp.net Fehlerberichterstattung ist Elmah Kopf und Schultern über dem Rest. Doch ein paar Dinge, die ich mag verbesserten sehen, ist die Filterung und vielleicht ein täglichen E-Mail verdauen, anstatt eine E-Mail pro Fehler.

Wenn Sie die Protokollierung injizieren wollen, warnt, Debuggt, Spuren usw., dann würde ich für log4net entscheiden.

Allerdings hängt es von der Art der Anmeldung sind Sie nach ...

Schauen Sie sich Gibraltar für große Protokollierung und vieles mehr.

Es hat seine eigene Logging-API und wir haben auch Adapter für log4net, NLog und das Objekt Guy Logging-Framework (Postsharp auch!). Neben Protokollierung, sammelt Gibraltar auch Fehler wie ELMAH sowie das Sammeln zusätzliche Metriken nützlich für Kunden-Support oder CEIP.

Lassen Sie sich diese noch nicht gesehen erwähnt, aber ich habe festgestellt, dass die eingebaute in System.Diagnostics Trace und Tracelisteners für die Protokollierung sehr mächtig sind. Wir haben eine Reihe von High-Performance benutzerdefinierten Tracelisteners für verschiedene Datenquellen bauen wir beharren Protokolle.

Wir tauschen in und aus verschiedenen Hörern in der Konfigurationsdatei des ganzen Zeit. Wir nutzen System.Diagnostics.CorrelationManager zu gehen Kette der Ausführung durch viele Server, Prozesse und Threads über Protokolle.

Alles in allem haben wir eine anspruchsvolle Logging-Lösung auf der Spitze gebaut, was kam mit dem Rahmen, und ich bin sehr zufrieden damit.

Ich habe verwendet Logstash ( https://www.elastic.co/products/logstash) & das ist ziemlich gut und Open Source.

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