Logstash смешанные журналы - многострочные и нормальные - PullRequest
0 голосов
/ 13 декабря 2018

Я использую входной файл для получения журналов, таких как:

input {
  file {
  path => "/home/ec2-user/*.log"
  }
}

В одном из файлов журналов некоторые события регистрируются с одной строкой:

2018-12-10 10:01:30.1097|0|Services.Services|INFO|  Message: test

Другие мультилинии, подобные этойone:

2018-12-10 10:01:30.1097|0|Services.Services|INFO|  Message: {
"account_id": "ec812648-3857-4625-9d9a-fc8ce1835493",
"name": "Player_539017",
"creation_time": "10/12/2018 10:52:52",
"hq_level": 2,
"force": 2570
} successfully dequeued |url: |action: 

Как перехватить оба сообщения с помощью фильтра logstash:

1 Ответ

0 голосов
/ 13 декабря 2018

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

file {
  path => "/home/ec2-user/*.log"
  codec => multiline {
    # Grok pattern names are valid
    pattern => "^%{TIMESTAMP_ISO8601} "
    negate => true
    what => "previous"
  }
}
...