0
我在一个文件中使用logstash过滤器插件处理多个日志消息。然后,过滤的日志将发送到elasticsearch。删除过滤器不工作logstash
在日志消息中有一个字段叫做addID。我想删除所有具有特定addID的日志消息。这些特定的addIDS存在于ID.yml文件中。
场景:如果日志消息的addID与ID.yml文件中存在的任何addID匹配,则应删除该日志消息。
任何人都可以帮助我实现这一目标吗?
下面是我的配置文件。
input {
file {
path => "/Users/jshaw/logs/access_logs.logs
ignore_older => 0
}
}
filter {
grok {
patterns_dir => ["/Users/jshaw/patterns"]
match => ["message", "%{TIMESTAMP:Timestamp}+{IP:ClientIP}+{URI:Uri}"]
}
kv{
field_split => "&?"
include_keys => [ "addID" ]
allow_duplicate_values => "false"
}
if [addID] in "/Users/jshaw/addID.yml" {
drop{}
}
}
output {
elasticsearch{
hosts => ["localhost:9200"]
}
}
感谢您的答复。 所以,如果我使用红宝石过滤器,那么我将能够删除具有特定addID的日志消息? – User24
@ User24是的。 cf [文档](https://www.elastic.co/guide/en/logstash/current/plugins-filters-ruby.html) – baudsp