我正在使用Filebeat将日志转发到Logstash。 我的文件名中包含“ v2”,例如:
C:\ logs \ Engine \ v2.latest.log
我想对这些文件执行不同的操作。 我尝试了以下两种方法:
filter{
if "v2" in [filename] {
grok {
.....
.....
}
}
}
OR
filter{
if [filename] =~ /v2/ {
grok {
.....
.....
}
}
}
答案 0 :(得分:1)
好吧,我的问题是在过滤器之后生成了“文件名”字段。所以我的语法是正确的,但是它根本没有捕获任何东西,因为它不存在。但是,从6.7版开始,他们添加了一个“ log.file.path”字段,这是我先前生成的“ Filename”字段。