如果字段包含值,则为Logstash

时间:2019-02-27 11:46:37

标签: logstash logstash-grok

我正在使用Filebeat将日志转发到Logstash。 我的文件名中包含“ v2”,例如:

  

C:\ logs \ Engine \ v2.latest.log

我想对这些文件执行不同的操作。 我尝试了以下两种方法:

filter{
   if "v2" in [filename] {
          grok {
            .....
            .....
          }

   }
 }

OR

    filter{
           if [filename] =~ /v2/ {
                  grok {
                    .....
                    .....
                  }

           }
     }

1 个答案:

答案 0 :(得分:1)

好吧,我的问题是在过滤器之后生成了“文件名”字段。所以我的语法是正确的,但是它根本没有捕获任何东西,因为它不存在。但是,从6.7版开始,他们添加了一个“ log.file.path”字段,这是我先前生成的“ Filename”字段。