Я пытаюсь включить logspout в мою среду, поскольку я использую следующие настройки в моем файле компоновки Docker.
logspout:
image: gliderlabs/logspout:v3.2.6
environment:
SYSLOG_FORMAT: rfc3164
MULTILINE_MATCH: last
DEBUG: 1
command: 'multiline+syslog://logstash:5020?filter.name=core-server'
volumes:
- '/var/run/docker.sock:/tmp/docker.sock'
networks:
- elk
depends_on:
- logstash
Из моего Java-приложения я пытаюсь войти под данными, используя регистратор
Class MyClass{
private void myFunc(){
LOG.info("\n one \n two \n three \n");
}
}
В моем отладчике я вижу журналы ниже
2018-11-26 13:45:42 [xyz] INFO
MyClass::myFunc:
one
two
three
, когда я иду на консоль хранения журналов, вместо одного сообщения журнала, это сообщение разбивается на два сообщения,
1. <14>2018-11-26T13:45:42Z ip-x-y-w-z core-server[100]: 2018-11-26
13:45:42 [xyz] INFO\n\t\t\t\tMyClass::myFunc:\n
2. <14>2018-11-26T13:45:42Z ip-x-y-w-z core-server[100]: one \n two \n
three \n
Вместо вышеупомянутого я ожидаю получить следующее сообщение о logstash
1. <14>2018-11-26T13:45:42Z ip-x-y-w-z core-server[100]: 2018-11-26
13:45:42 [xyz] INFO\n\t\t\t\tMyClass::myFunc:\n one \n two \n three \n
Я использовал многострочный адаптер logspout, чтобы мое многострочное сообщение передавалось в logstash как есть, а не как мое сообщение.получает разрыв после второго "\ n".
То, что я хочу, чтобы мое полное сообщение передавалось в logstash без прерывания на символ новой строки.