# Filebeat & docker containers, stdout контейнера как input для Filebeat

**URL:** https://discuss.elastic.co/t/filebeat-docker-containers-stdout-input-filebeat/200163
**Category:** Вопросы на русском языке
**Created:** [September 19, 2019, 9:16am UTC](https://discuss.elastic.co/t/filebeat-docker-containers-stdout-input-filebeat/200163 "2019-09-19T09:16:25Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![ep4sh](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ep4sh/32/40099_2.png) [@ep4sh](https://discuss.elastic.co/u/ep4sh)
#### Post date: [September 19, 2019, 9:16am UTC](https://discuss.elastic.co/t/filebeat-docker-containers-stdout-input-filebeat/200163/1 "2019-09-19T09:16:25Z")

</div>

Привет всем, вопрос про Filebeat и Docker контейнеры.  
Нужно сделать одну вещь, но пока не понимаю как.

Есть docker и логи контейнеров он пишет в stdout `/proc/self/fd/2`, а Filebeat должен их читать и отправлять в Logstash.  
Я увидел в конфигах Filebeat `input` для контейнеров, но насколько я понял, это привязано к log-файлам в `/var/lib/docker/.../...` или Ошибаюсь?

В любом случае, реально ли осуществить подобное, не городя кучу костылей на bash'e передавая `pid` на `stdin` `input` Filebeat'a?  
PS. Непонятность в том, что как должен Filebeat обнаружить процесс конкретного контейнера и забрать с него логи (точнее: из конкретного потока конкретного процесса)

---

<div class="post-metadata">

### Author: ![Yuri](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/yuri/32/52458_2.png) [@Yuri](https://discuss.elastic.co/u/Yuri)
#### Post date: [September 19, 2019, 3:24pm UTC](https://discuss.elastic.co/t/filebeat-docker-containers-stdout-input-filebeat/200163/2 "2019-09-19T15:24:31Z")

</div>

Здравствуйте,  
не эксперт в Filebeat, но насколько я знаю есть два способа читать логи контейнера:

- из stdout. Это способ по умолчанию. Достаточно указать id контейнера.
- напрямую из файла. Для этого необходимо указать путь к директории где докер хранит файлы.

UPD.  
глянул документацию. Оказывается мои знания устарели. Docker input считается устаревшим начиная с версии 7.2. Новый input - containers. Если я понимаю правильно, то теперь надо указывать не containerId а просто файлы логов. Я уточню с командой которая разрабатывает Filebeat.

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)
#### Post date: [October 17, 2019, 3:24pm UTC](https://discuss.elastic.co/t/filebeat-docker-containers-stdout-input-filebeat/200163/3 "2019-10-17T15:24:51Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
