69
69
pos_file /var/log/fluentd-containers.log.pos
70
70
tag *
71
71
read_from_head true
72
+ refresh_interval 1
72
73
<parse>
73
74
@type json
74
75
time_format %Y-%m-%dT%H:%M:%S.%NZ
@@ -81,79 +82,24 @@ data:
81
82
@id filter_kube_metadata
82
83
</filter>
83
84
84
- <match **>
85
- @type route
86
- <route **>
87
- copy
88
- @label @by_pod
89
- </route>
90
- <route **>
91
- copy
92
- @label @by_endpoint
93
- </route>
94
- </match>
95
- </label>
96
-
97
- <label @by_pod>
98
- <filter **>
99
- @type record_transformer
100
- @id filter_containers_stream_transformer
101
- <record>
102
- stream_name ${tag_parts[3]}
103
- </record>
104
- remove_keys kubernetes,docker,stream
105
- </filter>
106
- <match **>
107
- @type cloudwatch_logs
108
- region "#{ENV['AWS_REGION']}"
109
- log_group_name "#{ENV['LOG_GROUP_NAME']}"
110
- log_stream_name_key stream_name
111
- remove_log_stream_name_key true
112
- auto_create_stream true
113
- <buffer>
114
- flush_interval 5
115
- chunk_limit_size 2m
116
- queued_chunks_limit_size 32
117
- retry_forever true
118
- </buffer>
119
- </match>
120
- </label>
121
-
122
- <label @by_endpoint>
123
85
<filter **>
124
86
@type record_transformer
125
87
enable_ruby
126
88
<record>
127
- workload_type ${record.dig("kubernetes", "labels", "workloadType") || "unknown"}
89
+ stream_name ${record.dig("kubernetes", "pod_name")}_${record.dig("kubernetes", "container_name")}
90
+ log ${record.dig("log").rstrip}
128
91
</record>
129
- remove_keys docker,stream
130
- </filter>
131
-
132
- <filter **>
133
- @type grep
134
- regexp1 workload_type api
135
- </filter>
136
- <filter **>
137
- @type record_transformer
138
- enable_ruby
139
- <record>
140
- pod_name ${record.dig("kubernetes", "pod_name")}
141
- container_name ${record.dig("kubernetes", "container_name")}
142
- workload_id ${record.dig("kubernetes", "labels", "workloadID")}
143
- stream_name ${record.dig("kubernetes", "labels", "appName")}.${record.dig("kubernetes", "labels", "apiName")}
144
- </record>
145
- remove_keys kubernetes,api_name,app_name,workload_type
92
+ remove_keys kubernetes,docker,stream
146
93
</filter>
147
94
<match **>
148
95
@type cloudwatch_logs
149
- @id out_cloudwatch_logs_endpoints
150
96
region "#{ENV['AWS_REGION']}"
151
97
log_group_name "#{ENV['LOG_GROUP_NAME']}"
152
98
log_stream_name_key stream_name
153
99
remove_log_stream_name_key true
154
100
auto_create_stream true
155
101
<buffer>
156
- flush_interval 5
102
+ flush_interval 2
157
103
chunk_limit_size 2m
158
104
queued_chunks_limit_size 32
159
105
retry_forever true
0 commit comments