logstash系列-input和output方案预研结果

 预研目标一:

Logstash接入多个beats,filter根据ip打tag, output通过tag条件输出到不同的topic

环境:

两个filebeat(filebeat1:10.192.77.150, filebeat2:10.192.77.151)

一个logstash: 10.192.77.152:5045

Kafka:10.192.78.27:9092   topic:test150和test151

日志文件:/opt/filebeat/filebeat-7.6.2/tmpLogFile/a.log    1万条记录

步骤:

1、 部署第一个filebeat1,配置文件内容如下图:

 

说明:将日志采集后处理,增加ip字段,值为10.192.77.150,输出到10.192.77.152:5045

2、 部署第二个filebeat2,配置文件内容如下图:

 

说明:同样将日志采集后处理,增加ip字段,值为10.192.77.151,输出到10.192.77.152:5046

3、 部署logstash,配置conf内容

 

说明:

input接入上面的两个beats,分别监听5045、5046端口

filter中根据ip字段值添加tag: 

   10.192.77.150的ip加标签150

   10.192.78.151的ip,添加标签151

output中判断标签是否含有150,存在则输出到topic test150

             判断标签是否含有151,存在则输出到topic  test151

分别启动filebeat及logstash,结果如下:

test150接收到一万条数据,取其中一条如下

 

test151接收到一万条数据,取其中一条如下

 

结论:

接多个beats时,filter打tag标记后output可以通过if 【tags】条件输出到不同的topic

预研目标二:

Logstash在input中接入多个beats,output通过if【field】条件输出到不同的topic

步骤:

filebeat环境及配置文件不变

Logstash环境不变,配置文件修改如下图:

 

结果:

test150新增一万条数据,取其中一条如下

 

test151新增一万条数据,其中一条格式如下

 

结论:接多个beats时,output可以通过if 【field】条件输出到不同的topic

 

posted @ 2022-01-27 17:41  鼠标的博客  阅读(866)  评论(0编辑  收藏  举报