Журналы докера filebeat> file.log не работают - PullRequest
2 голосов
/ 17 июня 2019

С версией Docker 18.09.5, сборка e8ff056 и filebeat: 7.1.1 (от эластичного поиска), когда я набираю:

$ docker logs filebeat > filebeat.log

Я вижу логи, но filebeat.log пуст.

Если я попытаюсь:

$ docker logs logstash > logstash.log

Я не вижу журнал на консоли, но файл заполнен строками журналов.

Используемая ОС: Ubuntu 19.04

Ответы [ 2 ]

1 голос
/ 17 июня 2019

> перенаправляет STDOUT, но вы также можете получать STDERR из контейнеров. Чтобы перенаправить это, вы можете использовать:

 docker logs filebeat > filebeat.log 2> filebeat.err

или отправьте оба в один и тот же файл:

 docker logs filebeat > filebeat.log 2>&1
0 голосов
/ 17 июня 2019

Вы должны запустить контейнер с флагом -t, который выделит псевдо-tty для контейнера.Пример:

docker run -td --rm --name test store/elastic/filebeat:7.1.1

docker logs test > test.txt

Это сохранит выходные данные в файл.При работе без флага -t он просто сбросит логи в вашем терминале

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...