diff --git a/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml b/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml
index fc2079c5864..11acd0c9b11 100644
--- a/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml
+++ b/cluster/addons/fluentd-elasticsearch/fluentd-es-configmap.yaml
@@ -1,6 +1,16 @@
kind: ConfigMap
apiVersion: v1
+metadata:
+ name: fluentd-es-config-v0.1.2
+ namespace: kube-system
+ labels:
+ addonmanager.kubernetes.io/mode: Reconcile
data:
+ system.conf: |-
+
+ root_dir /tmp/fluentd-buffers/
+
+
containers.input.conf: |-
# This configuration file for Fluentd / td-agent is used
# to watch changes to Docker log files. The kubelet creates symlinks that
@@ -101,25 +111,19 @@ data:
# CRI Log Example:
# 2016-02-17T00:04:05.931087621Z stdout F [info:2016-02-16T16:04:05.930-08:00] Some log text here
- type tail
+ @id fluentd-containers.log
+ @type tail
path /var/log/containers/*.log
- pos_file /var/log/es-containers.log.pos
+ pos_file /var/log/fluentd-containers.log.pos
time_format %Y-%m-%dT%H:%M:%S.%NZ
tag raw.kubernetes.*
+ format json
read_from_head true
- format multi_format
-
- format json
- time_key time
- time_format %Y-%m-%dT%H:%M:%S.%NZ
-
-
- format /^(?
+
# Detect exceptions in the log output and forward them as one log entry.
+ @id raw.kubernetes
@type detect_exceptions
remove_tag_prefix raw
message log
@@ -128,14 +132,28 @@ data:
max_bytes 500000
max_lines 1000
+
system.input.conf: |-
+ # Example:
+ # 2015-12-21 23:17:22,066 [salt.state ][INFO ] Completed state [net.ipv4.ip_forward] at time 23:17:22.066081
+
+ @id minion
+ @type tail
+ format /^(?
+
# Example:
# Dec 21 23:17:22 gke-foo-1-1-4b5cbd14-node-4eoj startupscript: Finished running startup script /var/run/google.startup.script
- type tail
+ @id startupscript.log
+ @type tail
format syslog
path /var/log/startupscript.log
- pos_file /var/log/es-startupscript.log.pos
+ pos_file /var/log/startupscript.log.pos
tag startupscript
@@ -143,22 +161,24 @@ data:
# time="2016-02-04T06:51:03.053580605Z" level=info msg="GET /containers/json"
# time="2016-02-04T07:53:57.505612354Z" level=error msg="HTTP Error" err="No such image: -f" statusCode=404
- type tail
+ @id docker.log
+ @type tail
format /^time="(?
# Example:
# 2016/02/04 06:52:38 filePurge: successfully removed file /var/etcd/data/member/wal/00000000000006d0-00000000010a23d1.wal
- type tail
+ @id etcd.log
+ @type tail
# Not parsing this, because it doesn't have anything particularly useful to
# parse out of it (like severities).
format none
path /var/log/etcd.log
- pos_file /var/log/es-etcd.log.pos
+ pos_file /var/log/etcd.log.pos
tag etcd
@@ -169,144 +189,167 @@ data:
# Example:
# I0204 07:32:30.020537 3368 server.go:1048] POST /stats/container/: (13.972191ms) 200 [[Go-http-client/1.1] 10.244.1.3:40537]
- type tail
+ @id kubelet.log
+ @type tail
format multiline
multiline_flush_interval 5s
format_firstline /^\w\d{4}/
format1 /^(?\w)(?