diff --git a/cluster/addons/fluentd-gcp/fluentd-gcp-ds.yaml b/cluster/addons/fluentd-gcp/fluentd-gcp-ds.yaml index 63902894e01..a9418633b56 100644 --- a/cluster/addons/fluentd-gcp/fluentd-gcp-ds.yaml +++ b/cluster/addons/fluentd-gcp/fluentd-gcp-ds.yaml @@ -2,23 +2,23 @@ apiVersion: extensions/v1beta1 kind: DaemonSet metadata: - name: fluentd-gcp-v1.33 + name: fluentd-gcp-v1.34 namespace: kube-system labels: k8s-app: fluentd-gcp kubernetes.io/cluster-service: "true" - version: v1.33 + version: v1.34 spec: template: metadata: labels: k8s-app: fluentd-gcp kubernetes.io/cluster-service: "true" - version: v1.33 + version: v1.34 spec: containers: - name: fluentd-gcp - image: gcr.io/google_containers/fluentd-gcp:1.33 + image: gcr.io/google_containers/fluentd-gcp:1.34 # If fluentd consumes its own logs, the following situation may happen: # fluentd fails to send a chunk to the server => writes it to the log => # tries to send this message to the server => fails to send a chunk and so on. diff --git a/cluster/addons/fluentd-gcp/fluentd-gcp-image/Dockerfile b/cluster/addons/fluentd-gcp/fluentd-gcp-image/Dockerfile index 1481fd7303f..2b38e4ae8c0 100644 --- a/cluster/addons/fluentd-gcp/fluentd-gcp-image/Dockerfile +++ b/cluster/addons/fluentd-gcp/fluentd-gcp-image/Dockerfile @@ -36,6 +36,7 @@ RUN apt-get -qq update && \ td-agent-gem install --no-document fluent-plugin-record-reformer -v 0.8.2 && \ td-agent-gem install --no-document fluent-plugin-systemd -v 0.0.5 && \ td-agent-gem install --no-document fluent-plugin-google-cloud -v 0.5.2 && \ + td-agent-gem install --no-document fluent-plugin-detect-exceptions -v 0.0.4 && \ # Remove build tools apt-get remove -y -qq gcc make && \ apt-get autoremove -y -qq && \ diff --git a/cluster/addons/fluentd-gcp/fluentd-gcp-image/Makefile b/cluster/addons/fluentd-gcp/fluentd-gcp-image/Makefile index 2109f54b11f..1d998d3353e 100644 --- a/cluster/addons/fluentd-gcp/fluentd-gcp-image/Makefile +++ b/cluster/addons/fluentd-gcp/fluentd-gcp-image/Makefile @@ -26,7 +26,7 @@ .PHONY: build push PREFIX=gcr.io/google_containers -TAG = 1.33 +TAG = 1.34 build: docker build --pull -t $(PREFIX)/fluentd-gcp:$(TAG) . diff --git a/cluster/addons/fluentd-gcp/fluentd-gcp-image/fluent.conf b/cluster/addons/fluentd-gcp/fluentd-gcp-image/fluent.conf index 18a33384a0b..3477072f54b 100644 --- a/cluster/addons/fluentd-gcp/fluentd-gcp-image/fluent.conf +++ b/cluster/addons/fluentd-gcp/fluentd-gcp-image/fluent.conf @@ -70,7 +70,18 @@ type record_reformer enable_ruby true - tag kubernetes.${tag_suffix[4].split('-')[0..-2].join('-')} + tag raw.kubernetes.${tag_suffix[4].split('-')[0..-2].join('-')} + + +# Detect exceptions in the log output and forward them as one log entry. + + type detect_exceptions + remove_tag_prefix raw + message log + stream stream + multiline_flush_interval 5 + max_bytes 500000 + max_lines 1000 # Example: diff --git a/cluster/saltbase/salt/fluentd-gcp/fluentd-gcp.yaml b/cluster/saltbase/salt/fluentd-gcp/fluentd-gcp.yaml index b1b578dd12b..9d3509873f4 100644 --- a/cluster/saltbase/salt/fluentd-gcp/fluentd-gcp.yaml +++ b/cluster/saltbase/salt/fluentd-gcp/fluentd-gcp.yaml @@ -10,7 +10,7 @@ spec: dnsPolicy: Default containers: - name: fluentd-cloud-logging - image: gcr.io/google_containers/fluentd-gcp:1.33 + image: gcr.io/google_containers/fluentd-gcp:1.34 # If fluentd consumes its own logs, the following situation may happen: # fluentd fails to send a chunk to the server => writes it to the log => # tries to send this message to the server => fails to send a chunk and so on.