Using a smooth plugin helped me fix the problem.
Adding these lines to flu-conf
<filter **> @type concat key log stream_identity_key container_id multiline_start_regexp /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3} multiline_end_regexp /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3} </filter>
Where my regular expression checks DateTimeStamp in the logs where each line starts, as well as the date and timestamp (note the "log":"2017-09-21 15:03:27.289 ) below
2017-09-21T15:03:27Z tag {"container_id":"11b0d89723b9c812be65233adbc51a71507bee04e494134258b7af13f089087f","container_name":"/bel_osc.1.bc1k2z6lke1d7djeq5s28xjyl","source":"stdout","log":"2017-09-21 15:03:27.289 INFO 1 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.6"} 2017-09-21T15:03:28Z tag {"container_id":"11b0d89723b9c812be65233adbc51a71507bee04e494134258b7af13f089087f","container_name":"/bel_osc.1.bc1k2z6lke1d7djeq5s28xjyl","source":"stdout","log":"2017-09-21 15:03:28.191 INFO 1 --- [ost-startStop-1] oaccC[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext"}
In addition, I had to add below lines to the Dockerfile to install the plugin
RUN ["gem", "install", "fluent-plugin-concat", "--version", "2.1.0"]
Although this regular expression does not work well when an exception occurs, it is still much better than before. Fluentd Link, for reference .
Abhi
source share