Заголовки и нижние колонтитулы TraceListener
-
12-12-2019 - |
Вопрос
При написании пользовательского TraceListener как я могу заставить заголовок записи, данные/сообщение и нижний колонтитул записи быть одной дискретной записью?В частности, рассматриваемые пользовательские прослушиватели трассировки записывают в источник, не основанный на файлах, например базу данных или поток событий.Мне нужно либо игнорировать базовые методы writeHeader, writefooter в TraceListener, либо каким-то образом упаковать их в одно событие записи.
Решение
Вот хорошая статья о том, как на заказ TraceListener
Это работа, которая также объясняет, когда и почему WriteHeader
и WriteFooter
называются.Хитрость, позволяющая избежать WriteHeader
и WriteFooter
очевидно, заключается в том, чтобы переопределить Трассированные данные и/или Трассевент звонки.
Также есть обсуждение этого вопроса в эта ТАК-тема.
Наконец, я бы посоветовал вам взглянуть на Укадц.Диагностика это довольно крутая библиотека для расширения System.Diagnostics
и предоставляет, среди прочего, хороший способ добиться форматирования вывода, подобного log4net/NLog.Есть небольшое обсуждение этой библиотеки в эта ТАК-тема.
Удачи!