Какие средства просмотра журнала могут читать XML, созданный System.Diagnostics.EventSchemaTraceListener?

Я занимаюсь преобразованием нашей реализации ведения журнала для использования System.Diagnostics.TraceSource. Мы хотим воспользоваться преимуществами отслеживания активности и хотим читать несколько файлов журналов с нескольких серверов с помощью таких инструментов, как SvcTraceViewer и LogParser WCF.

Я преобразовал наш код для использования TraceSource, и теперь я нахожусь в процессе оценки производительности прослушивателей трассировки. В конечном счете, мы хотим воспользоваться преимуществами ETW (etw ), но до перехода на Windows Server 2008 пройдет несколько месяцев, поэтому мы пока не можем использовать EventProviderTraceListener.

Из документации ясно, что EventSchemaTraceListener — это самый эффективный прослушиватель трассировки, который выводит текстовый файл. Раньше я использовал XmlWriterTraceListener и мог открывать созданные им журналы с помощью SvcTraceViewer. К сожалению, EventSchemaTraceListener выводит другой XML, и хотя SvcTraceViewer открывает и конвертирует файл, он не справляется со своей задачей и важные поля теряются (например, текст сообщения журнала).

Есть ли инструмент, отличный от EventViewer в Vista и Windows 7, для чтения файлов журналов, созданных EventSchemaTraceListener? Я надеялся использовать SvcTraceViewer, потому что он хорошо фильтрует и отслеживает передачу действий.

Я мог бы написать преобразование XSLT для преобразования XML в формат, ожидаемый SvcTraceViewer. Если это единственный способ сделать это, я, вероятно, так и сделаю, но я надеялся, что уже есть инструмент для чтения вывода EventSchemaTraceListener в более новом формате.


person Dan Finucane    schedule 26.02.2010    source источник


Ответы (5)


Я думаю, что вам нужно, это TraceView . Он доступен как часть DDK. (Не знаю, почему это не просто часть Platform SDK.)

Возможно, это не совсем то, что вам нужно, но схема выходного XML-файла называется event.xsd. Вы можете получить его, загрузив Platform SDK.

person Mike Post    schedule 06.03.2010

Пожалуйста, проверьте сайт www.xpolog.com. Я думаю, вы получите четкое представление.

person Ramesh    schedule 03.03.2010
comment
Спасибо. Выглядит многообещающе, но я надеялся использовать бесплатные инструменты, такие как svctraceviewer или logparser WCF. - person Dan Finucane; 04.03.2010

Я почти уверен и надеюсь, что средство просмотра событий Windows (eventvwr.exe) сможет прочитать эти файлы.

При сохранении в формате XML из средства просмотра событий используется то же пространство имен схемы <Event xmlns='http://schemas.microsoft.com/win/2004/08/events/event'>

Но проблема в том, что мне еще предстоит найти способ успешно открыть их в средстве просмотра событий. Он пытается их импортировать, но выдает ошибку. Доложу, если узнаю больше...

person Jack Ukleja    schedule 28.09.2011


Хотя я знаю, что это не совсем ответ на ваш вопрос, я думаю, вам следует взглянуть на Log4Net . Эта структура ведения журналов с большим успехом использовалась во многих проектах. Это очень простое в использовании и довольно легко расширяемое бесплатное программное обеспечение.

person Mark Ewer    schedule 06.03.2010
comment
Я знаю, что это не отвечает на вопрос - я сказал это в ответе. Я просто думаю, что инструментирование ваших сборок с помощью Log4Net может быть лучшим подходом и, по крайней мере, заслуживает рассмотрения. - person Mark Ewer; 08.03.2010
comment
В вопросе упоминается несколько файлов журналов с нескольких серверов, что, я думаю, означает, что они используют функции корреляции WCF Service Trace Viewer (сопоставление трассировок между уровнями) - то, что log4net не (напрямую) поддерживает. - person Sly Gryphon; 19.04.2013