logstash 删除字段

 问题

  filebeat采集日志信息后,logstash打印信息,这个过程中,filebeat将自身的客户端信息也传送给了logstash,如果logstash不对这些字段进行过滤,导致es创建索引时,产生大量没有必要的字段。

解决方案

在配置文件中进行过滤,删除没有必要的字段。

input {
  beats {
    port => 5044

  }

}

filter{
    mutate{
        remove_field => ["host"]
        remove_field => ["agent"]
        remove_field => ["ecs"]
        remove_field => ["tags"]
        remove_field => ["fields"]
        remove_field => ["@version"]
        remove_field => ["@timestamp"]
        remove_field => ["input"]
        remove_field => ["log"]
    }
}

output {
  elasticsearch {
    hosts => ["192.168.22.68:9200"]
    index => "english"
  }
  stdout { codec => rubydebug }
}

结果如下:

 kibana中显示效果如下:

官网(https://www.elastic.co/guide/en/logstash/current/plugins-filters-mutate.html

参考博客(https://www.cnblogs.com/iiiiher/p/8000463.html

发布了240 篇原创文章 · 获赞 435 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/fjxcsdn/article/details/102767175