According to the doc of logstash
" ```
filter {
grok {
match => [ "message", "PATTERN1", "PATTERN2" ]
}
}
I wrote my filter as :
filter {
grok {
match => {
"message" => [
"%{TIMESTAMP_ISO8601:timestamp} \| %{LOGLEVEL:log_level} \| \[%{DATA:thread}\] --- %{NUMBER:process_id} \| %{DATA:class} \| \| %{GREEDYDATA:message}(\\r|\\n)?",
"%{TIMESTAMP_ISO8601:timestamp} \| %{LOGLEVEL:log_level} \| \[%{DATA:thread}\] --- %{NUMBER:process_id} \| %{DATA:class} \| \| Started %{DATA:SEND_AGENT_REF_TO_S3} \(direct:\/\/agentRefFromSiCas2-3\)"
]
}
}
}
Logstash seems to start fine with both configurations and report no errors, but the grok parsing isn't working properly with multiple grok patterns yet.