Что такое трассировка и как это сделать? - PullRequest
3 голосов
/ 07 октября 2008

Что такое трассировка и как это сделать?

У меня есть общая библиотека утилит, которую я включаю в свои проекты, и я хочу иметь возможность получить от нее некоторую информацию. Я использовал log4net, но не хотел бы, чтобы моя библиотека общих утилит зависела от log4net. Имеет ли это смысл?

Edit: Есть ли какая-либо связь между регистрацией и трассировкой? Хотел бы я по какой-то причине поставить трассировку и вход в один поток?

Должен ли я заменить некоторые из log4net Logger.Debug (..), которые есть в моих проектах, на System.Diagnostics.Trace.WriteLine (..) s?

Ответы [ 3 ]

4 голосов
/ 07 октября 2008

Вот несколько сообщений в блоге Майка Русоса из команды .NET BCL:

0 голосов
/ 07 октября 2008

Я согласен с FryHard, или лучше расширить log4net с вашими пользовательскими классами.

0 голосов
/ 07 октября 2008

Не будет ли проще (читай лучше) использовать log4net во всех ваших проектах и ​​библиотеках. Таким образом, проекты могут указать, как они хотят регистрировать материал, и регистрация вашей общей библиотеки будет просто слушать проект.

Если у вас есть настраиваемый регистратор для вашей общей библиотеки, вы в конечном итоге будете иметь общие журналы в одном месте, а журналы приложений (проектов) в другом месте.

Например, вы можете посмотреть на NHibernate или Castle ActiveRecord. Обе они могут рассматриваться как «общие утилиты» (они делают ваш доступ к данным). Они оба используют log4net. Таким образом, используя их в своем проекте и используя log4net в качестве регистратора проекта, вы можете указать, что все ваши данные журналов отправляются в одно место.

Если вы хотите, вы можете настроить различные регистраторы по-разному. Чтобы регистрировать ваши общие журналы на уровне INFO и журналы вашего проекта на ОШИБКЕ.


Я только что нашел другой вопрос по отслеживанию журналирования VS, кажется, он в глубине души. Посмотрите на это. Может быть, это поможет. Трассировка и логирование и как в нее входит log4net?
...