Как исключить журналы контейнеров с коляской istios из fluentbit

Мне нужно исключить журналы, созданные sidecar istio, из fluentbit. В официальной документации единственное, что мне удалось найти относительно исключения журналов из fluentbit, - это аннотации в разделе метаданных, которые, как мне кажется, здесь не поместятся:

https://docs.fluentbit.io/manual/pipeline/filters/kubernetes#kubernetes-annotations

      apiVersion: v1
kind: Pod
metadata:
  name: apache-logs
  labels:
    app: apache-logs
  annotations:
    fluentbit.io/exclude: "true"
spec:
  containers:
  - name: apache
    image: edsiper/apache_logs

Кто-нибудь это уже делал?

1 ответ

Если вы получаете журналы из файлов с помощью tail ввод, вы можете полагаться на Exclude_Pathвариант для этого: https://docs.fluentbit.io/manual/pipeline/inputs/tail .

В частности, если вы посмотрите на имя файла журнала, оно должно выглядеть следующим образом:

      /path-to-logs/${POD_NAME}_${NAMESPACE}_${CONTAINER_NAME}-${SOME_HASH}

Вы, вероятно, можете поиграть с той частью, у которой есть имя контейнера. Я бы попробовал что-то вроде следующего:

      [INPUT]
     Name             tail
     Path             /var/log/containers/*
     Exclude_Path     /var/log/containers/*_istio-proxy*,/var/log/containers/*_istio-init*
     Parser           docker
     Tag              kube.*
     Mem_Buf_Limit    5MB
     Skip_Long_Lines  On
Другие вопросы по тегам