Как исключить журналы контейнеров с коляской 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