Using fluent-plugin-concat pluging helped me in fixing above problem.
Adding these lines in fluent-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 is checking for DateTimeStamp in Logs where each line starts with and Date and Timestamp (pay attention to "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] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext"}
Also, I had to add below lines in Dockerfile to install the plugin
RUN ["gem", "install", "fluent-plugin-concat", "--version", "2.1.0"]
#Works with Fluentd v0.14-debian
Though this regular expression doesn't work well when an exception occurs, but still much better than before. Fluentd Link, for reference.