Filebeat для мониторинга журналов нескольких контейнеров, которые находятся внутри контейнеров - PullRequest
0 голосов
/ 05 июля 2018

У меня один вопрос, есть ли способ отправить журналы каждого контейнера, где файлы журналов находятся внутри контейнеров. На самом деле текущий поток поможет отправить файлы журналов, которые расположены по умолчанию (var / lib / docker / container / / .log). Я хочу настроить filebeat.yaml для отправки журналов из каждого контейнера в logstash вместо пути по умолчанию.

1 Ответ

0 голосов
/ 06 июля 2018

Если вы можете настроить свои контейнеры на запись в stdout, а не в файлы, похоже, что filebeat имеет режим автообнаружения , который будет захватывать docker logs каждого контейнера.

Еще одна распространенная установка в мире ELK - это настройка logstash на вашем хосте и настройка параметров ведения журнала Docker для отправки всех выходных данных на стандартный вывод контейнеров в logstash. Это заставляет docker logs не работать, но все ваши данные журнала доступны через Kibana.

Если процессы вашего контейнера всегда записывают в файлы журнала, вы можете использовать опцию docker run -v или опцию Docker Compose volumes:, чтобы смонтировать каталог хоста в каталог /var/log отдельного контейнера. Тогда файлы журнала будут видны на хосте, и вы можете использовать любой файловый сборщик для их захвата. Это в сфере рутинных изменений, которые потребуют от вас остановить и удалить существующие контейнеры, прежде чем запускать их с другими параметрами.

...