2015-04-07 2 views
4

Я запускаю Jira и Confluence в своей компании. Я бы хотел, чтобы лог-файлы отправлялись в Кибану.Logstash Конфигурация грузоотправителя для Jira

Это очень легко сделать, но я не хочу переписывать фильтры Grok. Я не могу себе представить, что никто этого уже не сделал.

Есть ли у кого-нибудь пример конфигурации отправителя логстафа. Большая часть лесозаготовок, таких как catalina.log, является стандартной.

Пожалуйста, помогите мне с примерами

ответ

1

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

Вместо того, чтобы взаимодействовать с различными фильтрами для объединения многострочных сообщений и поискать все поля, я настоятельно рекомендую использовать макет Log4j в github.com/logstash/log4j-jsonevent-layout для создания журналов на основе JSON, которые Logstash может читать напрямую без каких-либо фильтров. Помимо того, что вам не нужно поддерживать фильтры, вы получаете все поля из каждого события журнала. Так как я не знаю, что ваш catalina.log выглядит, я не могу сказать, что вам не хватит, анализируя его содержимое вместо использования раскладки JSON.

Недостатком является то, что он немного более эффективен в развертывании. Вам, очевидно, придется развернуть файл jar-файла самого макета, но у него есть несколько собственных зависимостей (net.minidev: jsonsmart и commons-lang: commons-lang), которые вам тоже нужно сделать.

Смежные вопросы