Filebeat отправляет mulltiline postgres log как один журнал в filebeat, установленный только для этого конкретного источника - PullRequest
2 голосов
/ 13 марта 2019

Например, у меня есть sql журнал:

< 2019-03-13 09:50:50.431 CET >WYRAŻENIE:  SELECT
                              SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
< 2019-03-13 09:58:50.943 CET >UWAGA:  detail: RUCH_KRADZ, 0.05, sum: 0.25, date: 2019-03-03

В кибане каждая строка представляет собой отдельный журнал. У меня есть:

  # Paths that should be crawled and fetched. Glob based paths.
  paths:
    - /opt/tomcat/logs/*.json
    - /var/lib/psql/logs/*

Я хочу, чтобы только для /var/lib/psql/logs/* журнал был как одна дата между. Таким образом, в приведенном выше примере у нас должно быть 2 журнала в Kibana, а не 5 - это количество строк.

1 Ответ

2 голосов
/ 24 марта 2019

В конфигурации filebeat вы можете определить несколько входных секций, каждая секция может иметь свои собственные опции

multiline.pattern Указывает шаблон регулярного выражения для сопоставления, где первая строка сообщения начинается со скобки (<)

filebeat.inputs:

- type: log
  enabled: true
  paths:
    - /opt/tomcat/logs/*.json

- type: log
  enabled: true
  paths:
    - /var/lib/psql/logs/*
  multiline.pattern: '^<'
  multiline.negate: true
  multiline.match: after

Проверьте здесь для более подробной информации о Управление многострочными сообщениями

...