2013-04-17 12 views
5

Chciałbym uniknąć pisania własnego ogólnego interfejsu rejestrowania, a raczej użyć wbudowanej funkcji Trace, od której nie wymaga się żadnej biblioteki rejestrowania. Zanim zajmie się bibliotekami rejestrowania, mam już informacje o śledzeniu przynajmniej w oknie wyjściowym, które na tym etapie rozwoju jest dość adekwatne.Korzystanie z .NET Trace, a następnie NLog lub log4net itp., Jako odbiornik

Chciałbym wtedy dodać do mojej aplikacji bibliotekę rejestrowania i połączyć ją z odbiornikiem Trace i nie zapisywać więcej kodu logowania.

Jakie są Twoje opinie na temat tej strategii i czy śledzą nasłuchiści dla tych bibliotek rejestrowania, czy może inne, takie jak biblioteka korporacyjna, są dostępne lub możliwe do szybkiego wdrożenia?

Odpowiedz

2

NLog dostarcza narzędzie TraceListener, które będzie trasować instrukcje Trace/TraceSource do systemu rejestrowania NLog.

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

AFAIK log4net nie pochodzi z TraceListener, ale powinien być na tyle łatwe do napisania jeden:

How to log Trace messages with log4net?

Ponadto, nie pytałem, ale zapewnia również Common.Logging sposób trasowania komunikatów logowania (przy użyciu API abstrakcji Common.Logging) do TraceListener, jak również pomost między platformami obsługiwanymi przez Common.Logging.

See zaawansowanych zadań pozyskujących tutaj:

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

Jeśli chodzi o moją opinię na temat strategii ... Myślę, że strategia wydaje się rozsądne. Myślę, że zaleciłbym rozważenie używania TraceSources zamiast statycznego obiektu Trace. Jedną z korzyści jest to, że będziesz mieć większą ziarnistość kontroli (to znaczy włączać/wyłączać niektóre Źródła Trace lub ustawiać je na różnych poziomach).

+0

Dzięki temu przyjrzę się typowemu protokołowi, ale prawdopodobnie najpierw utknę w zwykłym śledzeniu, po dobrym spojrzeniu na TraceSources. – ProfK

+0

TraceSources i Common Logging to, dzięki. Nie wiedziałem wcześniej o Common Logging. – ProfK

+0

Lubię dodać http://insightextensions.codeplex.com/ do miksu. – code5

Powiązane problemy