Лучший формат XML для событий журнала с точки зрения поддержки инструментов для интеллектуального анализа данных и визуализации? - PullRequest
2 голосов
/ 21 января 2009

Мы хотим иметь возможность создавать файлы журналов из нашего Java-приложения, которое подходит для последующей обработки инструментами, которые помогают исследовать ошибки и собирать статистику производительности.

В настоящее время мы используем традиционные «материалы журнала, которые могут или не могут быть сведены в текстовую форму и добавлены в файл журнала», но это лучше всего подходит для небольших объемов информации, читаемой человеком.

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

Я бы хотел использовать как можно более широко поддерживаемый формат XML, и сейчас я нахожусь в фазе «исследования, затем принятия решения». Я был бы признателен за любую помощь, как с точки зрения формата XML, так и инструментов, и был бы рад написать склеенный код, чтобы получить то, что мне нужно.

Что я нашел до сих пор:

log4j Формат XML: поддерживается бензопилой и Vigilog. Формат Lilith XML: поддерживается Lilith

Не исследованные инструменты:

Microsoft Log Parser: очевидно, поддерживает XML. Просмотр журнала OS X:

плюс много инструментов на http://www.loganalysis.org/sections/parsing/generic-log-parsers/

Есть предложения?

Ответы [ 5 ]

1 голос
/ 23 мая 2010

Если вы определяете свою собственную запись в файл журнала XML, вам не нужно беспокоиться о наличии закрывающего и открывающего тега для создания корректного XML. Правильный ответ Илии в том, что у вас есть проблема, если вы хотите создать документ XML , но это не обязательно сразу. Стандарт W3 также определяет XML Entities (см. Раздел 4.3 спецификации W3 XML 1.0, второе издание, на которое, к сожалению, я не могу ссылаться, потому что у меня нет достаточного количества точек), что более подходит постоянное добавление в файл в стиле журнала без перезаписи его частей. Затем вы можете создать ссылочный документ-оболочку XML, если вам нужно работать с реальным документом XML, а не с сущностью XML (см. Пример http://www.perlmonks.org/?node_id=217788#217797)

1 голос
/ 22 января 2009

К сожалению, я не могу дать вам ответ, который вы ищете, но я хотел бы предупредить вас о том, что следует учитывать при входе в XML. Например:

<log>
 <msg level="info">I'm a log message</msg>
 <msg level="info">I'm another message</msg>
 <!-- maybe you won't even get here -->
 <msg level="fatal">My server just ate a flaming death

В приведенном выше фрагменте потенциального журнала XML вы можете увидеть самый большой недостаток регистрации в XML. Когда происходит катастрофический сбой, ваш формат журнала нарушается, потому что он требует закрытия тегов. Однако, если вы используете программу, которая анализирует ваш основной вывод журнала, это не должно быть слишком большой проблемой.

0 голосов
/ 02 февраля 2009

Я бы посоветовал вам рассмотреть logback-access для событий.

Кроме этого, все, что использует JMX, так как оно было сделано для соответствия набору функций SNMP.

0 голосов
/ 02 февраля 2009

Похоже, что программа просмотра журнала Lilith содержит XML-формат, который хорошо подходит для работы с дополнительными возможностями, доступными в logback, а не только с log4j.

На данный момент это лучшая ставка на данный момент:)


Я адаптировал класс log4j xmllayout для logback, который работает с бензопилой.


Поскольку я не смог найти подходящего средства просмотра журналов, способного визуализировать информацию о событиях (вместо того, чтобы просто представлять все события в таблице), на данный момент я решил создать очень краткий XML-макет, содержащий информацию, анализируемую компьютером, на основе выше, который может быть затем обработан Microsoft LogParser в любой нужный мне формат.

0 голосов
/ 28 января 2009

Одна из приятных вещей в log4j заключается в том, что он предлагает прекрасные возможности для настройки форматов журналов и того, куда они записываются.

Таким образом, вместо выбора какого-либо формата файла журнала, я бы выбрал некоторую библиотеку журналов, которая позволяет изменять формат и позволяет также получать журнал напрямую какой-либо программе.

...