Как установить стратегию ролловера в журнале трассировки System.Diagnostics? - PullRequest
5 голосов
/ 25 сентября 2011

У меня есть проект, который использует System.Diagnostics для ведения журнала,

И он создает множество новых файлов журналов, каждый из которых начинается с GUID,

Даже когда последний файл журнала былочень маленький

Я хочу настроить роль, которая контролирует создание нового файла журнала

Где я могу его настроить?

И второй вопрос: где я могу установить журналписать без времени?

Спасибо

Ответы [ 2 ]

5 голосов
/ 25 сентября 2011

См. Следующую ссылку для обсуждения прослушивателей трассировки ролловера:

Какой самый лучший tracelistener файла журнала ролловера для .NET

Принятый ответ рекомендует FileLogTraceListener:

http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.logging.filelogtracelistener.aspx

Я бы посоветовал вам также взглянуть на Ukadc.Diagnostics как на способ повысить гибкость (и форматирование) трассировки / ведения журнала System.Diagnostics:

http://ukadcdiagnostics.codeplex.com/

Чтобы ответить на ваш последний вопрос о входе в систему, отличную от UTC, я думаю, что единственный ответ - написать свой собственный TraceListener (или использовать чужой, например, Ukadc.Diagnostics).

Само собой разумеется, что каркасы журналирования, такие как NLog и log4net, очень популярны по определенной причине: они предоставляют чрезвычайно мощные и гибкие решения для ведения журналов, позволяя вам сосредоточиться на функциональности вашего приложения, а не на решении проблем журналирования.

1 голос
/ 09 сентября 2015

Я также столкнулся с обеими проблемами (размер файла -rollover и Timestamps non UTC для событий) стандартной реализации TraceListener, и я не хотел иметь сторонний инструмент.

Я нашел это решение с минимальными усилиями:

http://www.geekzilla.co.uk/View2C5161FE-783B-4AB7-90EF-C249CB291746.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...