filebeat、logstash过滤器实例

filebeat、logstash过滤器实例
最新回答
选择奔跑

2020-12-17 12:26:07

主要描述filebeat和logstash的过滤器使用。

参考:

   filebeat:   
https://www.elastic.co/guide/en/beats/filebeat/6.8/defining-processors.html


   logstash:  
https://www.elastic.co/guide/en/logstash/6.8/filter-plugins.html


版本:elasticsearch-6.8.1、filebeat-6.8.0、logstash-6.8.0

将如下日志数据,通过filebeat或者filebeat+logstash存入elasticsearch。

说明:filebeat默认将每行日志信息读取到message字段中。

          1.将message字符串通过dissect处理,获取json字符串信息到msg1中,此时msg1中为:

          2.通过decode_json_fields处理,将json字符串转化为json对象。此处根据业务需求需要将json解析出的属性值全部放到顶级字段,需要将target设置为空。此处可以通过target自行设置存放目标字段位置;

          3.通过drop_fields将过程数据删除。如果不删除,每条数据将是原来数据的三倍大小。

说明:logstash接收到filebeat传来的数据,默认日志信息放在message字段中。

         1.通过grok过滤器去掉json字符串以外的信息,过滤完成后信息放到了temMsg中,内容如下:

          2.通过json过滤器将temMsg中的json字符串解析为json对象,并将解析得到的字段放到顶级字段中。