删除包含哈希字符的日志行

Jon*_*röm 8 regex logging logstash logstash-grok

在我的Logstash发货人中,我想过滤掉用散列字符注释的行:

#This log row should be dropped.
But one this should not.
Run Code Online (Sandbox Code Playgroud)

我能够使用grep过滤器,但由于不鼓励(将要退役),我正在尝试使用grok过滤器来代替.此过滤器无效:

grok {
  match => ["message", "^#.*"]
  drop_if_match => true
}
Run Code Online (Sandbox Code Playgroud)

我也尝试将正则表达式放在自定义模式文件中,但没有帮助.有任何想法吗?

rut*_*ter 21

如果您感兴趣,甚至更简单:

filter {
    if ([message] =~ /^#/) {
        drop{}
    }
}
Run Code Online (Sandbox Code Playgroud)

Logstash的最后几个版本已经更加重视配置文件中的分支逻辑.需要一点点习惯,但是一旦你这么做就很方便.