我们经常在项目中需要查看日志,定位问题,日志是项目开发中很重要的一块,一般我们使用log4j来输出日志,但通过log4j将日志保存到服务器的日志文件中,后续定位时需要打开文件,进行搜索,比较繁琐。目前比较成熟的日志框架ELK(Elasticsearch,Logstash,Kibana),即通过logstash搜集,然后将日志输出到Elastaicsearch中,最后通过Kibana展示出来,在这里面充分利用了Elasticsearch的文本搜索优势,我们通过关键词定位日志的位置。当然,Logstash可以替换为其他的数据采集工具,如Flume,Kafka等,只要能和Elasticsearch对接上即可。本篇我们将介绍如何将log4j的日志输出到kafka,后续篇章中我们会详细介绍Kafka+Elasticsearch+Kibana。
一. 环境准备
1. pom文件
2. log4j.properties配置文件
3. 代码
二. 验证
我们在控制台开启一个消费者,然后运行KafkaLog4j的 main函数。我们可以看到log4j输出的日志都输出到了kafka消息中。
本篇我们主要介绍了Kafka与Log4j的整合,下一篇我们将介绍Kafka与Springboot的整合。
领取专属 10元无门槛券
私享最新 技术干货