我在logstash多行过滤器中有这样的模式:
filter {
multiline {
pattern => "^Started.*ActiveRecord: ([0-9]+\.[0-9]{1})ms\).+?"
negate => true
what => "previous"
stream_identity => "%{host}.%{path}.%{type}"
}
}
但问题是这个表达式捕获所有rails请求,直到日志文件结束。如何判断此表达式在第一场比赛时停止?
答案 0 :(得分:0)
请改为尝试:
^Started.*?ActiveRecord: ([0-9]+\.[0-9]{1})ms\).*?$
答案 1 :(得分:0)