Я пытаюсь отправить журналы в splunk из Kubernetes, используя fluentd в качестве набора демонов.
Когда я устанавливаю format none
и нажимаю splunk, он работает. Но я хочу добавить kubernetes_metadata, поэтому я обновился до format json
и добавил фильтр kubernetes_metadata
.
Затем я получаю 400 Bad Request.
{"text": "Invalid data format", "code": 6, "invalid-event-number": 0 }
Вот мой файл fluent.conf
# Ignore fluentd log messages
<match fluent.**>
@type null
</match>
<source>
@type tail
path /var/log/containers/*.log
pos_file /fluentd/log/docker-containers.log.pos
tag kubernetes.*
format json
read_from_head true
</source>
<filter kubernetes.**>
@type kubernetes_metadata
</filter>
<match kubernetes.**>
@type splunk-http-eventcollector
server <host>:8088
protocol https
verify false
token ***
source fluentd-kube-containers
sourcetype _json
host "#{ENV['HOSTNAME']}"
buffer_chunk_limit 700k
batch_size_limit 1000000
buffer_type file
buffer_path /fluentd/log/fluentd-buffer
flush_interval 10s
</match>