一、日志采集架构图:
二、模块功能说明:
2.1、filebeat
Filebeat实现日志采集,采集指定路径的日志文件,并对日志格式、内容、字段等信息进行处理,发送至消息中间件、或发送至Logstash再次处理,或直接发送存储至Elasticsearch结合Kibana直接展示(本文采用先发送至Kafka做异步分流处理,再由Kafka推送至Logstash再次处理,最终发送至ES)。
2.2、Kafka:
将所采集到的不同项目或不同模块的日志发送至不同Topic,实现高并发下削峰和分流,提高系统可用性。
2.3、Logstash:
消费Kafka中的日志消息,对消息再加工,根据日志文件名及路径提取对应的项目模块名称;提取日志信息如:日志采集时间、日志级别、所属类或线程、日志详情等信息。
2.4、Elasticsearch和Kibana
ES作为持久化层存储日志信息,依据其强大的搜索功能结合Kibana做查询展示;根据ES
生命周期管理功能,动态定制数据保存时长。
下一篇Filebeat的使用:Filebeat+Kafka+ELK日志采集(二)——Filebeat
ELK日志采集系列:ELK日志采集