Можно ли прочитать файл журнала с помощью бензопилы?

У меня есть несколько файлов журнала [сгенерированных с помощью log4j]. Я узнал, что мы можем использовать бензопилу для чтения этих журналов [хотя мы можем читать эти журналы также находятся в блокноте].
Но я не могу понять, как открыть сохраненный файл журнала, чтобы увидеть его содержимое. Итак, простой вопрос: Is it possible to read the log file using Chainsaw?


person Rakesh Juyal    schedule 02.12.2009    source источник
comment
Пожалуйста, не делайте двойных постов (обман теперь удален).   -  person Marc Gravell    schedule 02.12.2009


Ответы (4)


Я использую программу просмотра журналов Chainsaw v2 в Windows.

В меню «Файл» есть опция «Загрузить файл Log4j», которая позволит вам открыть XML-файл журнала Log4j.

Конечно, файл, который вы пытаетесь открыть, должен соответствовать XML-схеме log4j.

person Cocowalla    schedule 02.12.2009
comment
@coco: я видел этот вариант, но он ожидает XML-файла. тогда как у меня есть файл .log. - person Rakesh Juyal; 03.12.2009
comment
Как упоминалось в моем ответе, Chainsaw будет читать только файлы XML в формате log4j, поэтому я боюсь, что ответ на ваш вопрос - «нет», Chainsaw не может читать ваши журналы, потому что они не в ожидаемом формате. - person Cocowalla; 03.12.2009

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

Пример строки журнала:

20100128 11: 35: 34.546 [основная] ИНФОРМАЦИЯ - package1.package2.SomeLoggerName - здесь сообщение строка1 сообщение здесь строка2

Эти две строки, представляющие одну запись журнала, можно проанализировать с помощью этого logFormat:

TIMESTAMP [THREAD] LEVEL - LOGGER - MESSAGE

См. LogFilePatternReceiver JavaDoc для получения дополнительной информации (доступной из меню справки Chainsaw) и пример конфигурации приемника (доступный на вкладке приветствия, кнопка «просмотреть пример конфигурации приемника»).

person Scott    schedule 30.01.2010
comment
Как насчет записи журнала: ‹log4j: категория события = отметка времени PROTO = 01-29-2010 17: 13: 54.65 priority = WARN thread = Connect_693› ‹log4j: message› ‹! [CDATA [### Connection: Error чтение объекта: сброс соединения]] ›‹ / log4j: message ›‹ log4j: NDC ›‹! [CDATA [nodaltest, 10.100.129.70, XXX]] ›‹ / log4j: NDC ›‹ / log4j: event › - person PerlDev; 30.01.2010

Да, Chainsaw может читать обычные текстовые файлы журналов - используйте LogFilePatternReceiver. См. Пример конфигурации, доступной на вкладке приветствия.

person Scott    schedule 15.01.2010
comment
Как насчет того, чтобы текстовый журнал имел особый / настраиваемый макет? - person PerlDev; 29.01.2010

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

Можете ли вы изменить макет для создания атрибутов уровня и категории? Если это так, Chainsaw сможет обработать ваш файл журнала.

Если вам нужно использовать имена категорий и атрибутов приоритета, я бы предложил вытащить источник XmlDecoder log4j и изменить его, чтобы он принимал имена атрибутов приоритета и категории. Затем вы можете настроить Chainsaw для использования LogFileXMLReceiver и указать свою собственную реализацию декодера.

Вкладка приветствия Chainsaw предоставляет пример конфигурации приемника.

Вот источник XMLDecoder: https://github.com/apache/logging-chainsaw/blob/chainsaw-2.0.0-rc1/src/main/java/org/apache/log4j/xml/XMLDecoder.java

JavaDoc для LogFileXMLReceiver должен быть доступен из меню справки Chainsaw.

person Scott    schedule 31.01.2010