2013-04-17 7 views
5

Ich möchte vermeiden, meine eigene generische Logging-Schnittstelle zu schreiben, und stattdessen eingebaute Trace Funktionalität, die zu Beginn mit benötigt keine Logging-Bibliothek. Bevor ich Logging-Bibliotheken anspreche, habe ich meine Trace-Informationen bereits in mindestens dem Ausgabefenster, was zu diesem Zeitpunkt der Entwicklung völlig ausreichend ist.Using .NET Trace und dann NLog oder log4net etc, als ein Listener

Ich würde dann gerne eine Logging-Bibliothek zu meiner App hinzufügen, und Trace mit einem Listener zu verbinden, und nicht mehr Logging-Code schreiben.

Was sind Ihre Meinungen zu dieser Strategie, und Trace-Listener für diese Protokollierungsbibliotheken oder vielleicht andere, wie Enterprise Library, verfügbar oder machbar, um schnell zu implementieren?

Antwort

2

NLog stellt einen TraceListener bereit, der Trace/TraceSource-Anweisungen an das NLog-Protokollierungssystem weiterleitet.

http://nlog-project.org/2010/09/02/routing-system-diagnostics-trace-and-system-diagnostics-tracesource-logs-through-nlog.html

AFAIK log4net kommt nicht mit einem Tracelistener, aber es sollte einfach genug sein, zu schreiben ein:

How to log Trace messages with log4net?

Auch Sie nicht fragen, aber Common.Logging bietet auch eine Möglichkeit, Protokollierungsnachrichten (unter Verwendung der Common.Logging-Abstraktions-API) an einen TraceListener weiterzuleiten sowie zwischen den von Common.Logging unterstützten Plattformen zu überbrücken.

Siehe Advanced Logging Aufgaben hier:

http://netcommon.sourceforge.net/docs/2.1.0/reference/html/ch01.html

Soweit meine Meinung über Ihre Strategie ... Ich denke, die Strategie sinnvoll erscheint. Ich denke, dass ich empfehlen würde, TraceSources anstelle des statischen Trace-Objekts zu verwenden. Ein Vorteil ist, dass Sie eine feinere Granularität der Kontrolle haben (d. H. Einige TraceSources ein-/ausschalten oder sie auf verschiedene Ebenen setzen).

+0

Danke, ich werde Common Logging betrachten, aber bleibe wahrscheinlich bei der einfachen Verfolgung, nach einem guten Blick auf TraceSources. – ProfK

+0

TraceSources und Common Logging ist es, danke. Ich hatte vorher nichts von Common Logging gewusst. – ProfK

+0

Ich möchte hinzufügen http://insightextensions.codeplex.com/ in den Mix. – code5

Verwandte Themen