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