фильтр работат если указать параметр
condition.container.labels.collect_logs_with_filebeat: "true"
и добавить метку контейнеру, логи контейнера которого я хочу получать:
labels:
co.elastic.logs/enabled: "true" # for Filebeat
collect_logs_with_filebeat: "true"
——————————————————-
но что делать, если контейнеров сотни и всем метки добавлять не будешь?
Правило:
condition.docker.container.name: "имя контейнера" - не работает.
——————————-
вышеописанное относится к конфигурации filebeat запущенного как локально, так и в контейнере.
Если запускать filebeat в контейнера и определить его в изолированной docker.networks (external) - вместе с контейнером, логи контейнера которого я хочу получать - — он это игнорирует и слушает все контейнеры - хинты же слушают все контейнеры на хосте.
Вот и дилемма - страдать и добавлять всем контейнерам метки "слушать или не слушать" их filebeat'у , или всё же как смочь настроить templates: для фильрации контейнеров.