-
Notifications
You must be signed in to change notification settings - Fork 1
/
fluentd-configmap.yaml
92 lines (83 loc) · 2.26 KB
/
fluentd-configmap.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
apiVersion: v1
kind: ConfigMap
metadata:
name: fluentd-config
namespace: {{ .Values.global.namespace }}
data:
fluentd.conf: |
# Ignore fluentd own events
<match fluent.**>
@type null
</match>
# HTTP input for the liveness and readiness probes
<source>
@type http
bind 0.0.0.0
port 9880
</source>
<source>
@type tail
path /var/log/containers/*.log
# exclude Fluentd logs
exclude_path /var/log/containers/*fluentd*.log
pos_file /opt/bitnami/fluentd/logs/buffers/fluentd-docker.pos
tag kubernetes.*
read_from_head true
<parse>
@type multi_format
<pattern>
format json
time_key time
time_format %Y-%m-%dT%H:%M:%S.%NZ
</pattern>
<pattern>
format /^(?<time>.+) (?<stream>stdout|stderr) [^ ]* (?<log>.*)$/
time_format %Y-%m-%dT%H:%M:%S.%N%:z
</pattern>
</parse>
</source>
# enrich with kubernetes metadata
<filter kubernetes.**>
@type kubernetes_metadata
</filter>
# Throw the healthcheck to the standard output instead of forwarding it
<match fluentd.healthcheck>
@type stdout
</match>
{{- if .Values.elasticsearch.enabled }}
# Send the logs to the elasticsearch
<match **>
@type elasticsearch
include_tag_key true
hosts {{ .Values.elasticsearch.hosts }}
user {{ .Values.elasticsearch.user }}
password {{ .Values.elasticsearch.pw }}
include_timestamp true
logstash_prefix minikube
logstash_dateformat %Y.%m.%d
logstash_format true
<buffer>
@type file
path /opt/bitnami/fluentd/logs/buffers/logs.buffer
flush_thread_count 2
flush_interval 5s
</buffer>
</match>
{{- end }}
{{- if .Values.kafka.enabled }}
# Send the logs to Kafka
<match **>
@type kafka2
brokers {{ .Values.kafka.brokers }}
default_topic logs
use_default_for_unknown_topic true
username {{ .Values.kafka.user }}
password {{ .Values.kafka.pw }}
ssl_ca_certs_from_system false
sasl_over_ssl true
ssl_ca_cert "/opt/bitnami/fluentd/certs/ca.cert"
<format>
@type json
</format>
</match>
{{- end }}