LOGSTASH 过滤器 |同一文件的多个模式
LOGSTASH filter | Multiple patterns for same file
在我的 logstash 配置中,我需要使用多个 patterns.My 应用程序以 3 种模式生成日志。我尝试将数组用于多个模式,但它不起作用。
filter{
grok{
match=>{
"message"=>[
"\[%{TIMESTAMP_ISO8601:timestamp}\] COMMTRACE user=\[%{GREEDYDATA:userId}\]\, sessionId\=\[%{GREEDYDATA:sessionId}\]\, ip\=\[%{HOSTNAME:ip}\]\, event\=\[%{GREEDYDATA:event}\]",
"\[%{TIMESTAMP_ISO8601:timestamp}\] COMMTRACE user\=\[%{GREEDYDATA:user}\], sessionId\=\[%{GREEDYDATA:sessionId}\], ip\=\[%{IP:ip}\]\, type\=\[%{GREEDYDATA:type}\]\, msg\=\[%{GREEDYDATA:msg}\]"
]
}
}
}
请帮忙
您没有在 GREEDYDATA:user 之后的第二个模式中转义逗号,GREEDYDATA:sessionId 之后的逗号也不转义。
在我的 logstash 配置中,我需要使用多个 patterns.My 应用程序以 3 种模式生成日志。我尝试将数组用于多个模式,但它不起作用。
filter{
grok{
match=>{
"message"=>[
"\[%{TIMESTAMP_ISO8601:timestamp}\] COMMTRACE user=\[%{GREEDYDATA:userId}\]\, sessionId\=\[%{GREEDYDATA:sessionId}\]\, ip\=\[%{HOSTNAME:ip}\]\, event\=\[%{GREEDYDATA:event}\]",
"\[%{TIMESTAMP_ISO8601:timestamp}\] COMMTRACE user\=\[%{GREEDYDATA:user}\], sessionId\=\[%{GREEDYDATA:sessionId}\], ip\=\[%{IP:ip}\]\, type\=\[%{GREEDYDATA:type}\]\, msg\=\[%{GREEDYDATA:msg}\]"
]
}
}
}
请帮忙
您没有在 GREEDYDATA:user 之后的第二个模式中转义逗号,GREEDYDATA:sessionId 之后的逗号也不转义。