I've created the following grok pattern to parse the log file-->
(?%{TIMESTAMP_ISO8601}) %{LOGLEVEL:loglevel} * (?[A-Za-z0-9$_.]+) ((%{WORD:log-AppCode})?:(%{NOTSPACE:log-ServerId})?:(%{NOTSPACE:log-ProcessId})?:%{NOTSPACE:log-ThreadName}) %{GREEDYDATA:log-message} ((%{NOTSPACE:log-UserId})?:(%{NOTSPACE:log-TraceId})?:(%{NOTSPACE:log-SpanId})?:(%{NOTSPACE:log-ClientIP})?:(%{NOTSPACE:log-SessionId})?:(%{NOTSPACE:log-FlowId})?:(%{NOTSPACE:log-WidgetId})?) ([(%{DATA:log-AppVersion})?]:[(%{DATA:log-FwkVersion})?])%{SPACE}%{GREEDYDATA:exception-stacktrace}
It is working correctly to parse the multiline events as well when stdout { codec => rubydebug } is used in conf file.
But when I removed this line from output, multiline events doesn't parse.
What can be the problem? Any help is most appreciated.