Docker中java logback 项目 向 EFK 写入日志

本文详细介绍了如何在Docker环境中,通过改进的FluentLogbackAppender解决Java项目向EFK(Elasticsearch、Fluentd、Kibana)输出日志时遇到的问题,如容器区分困难、日志msg字段被分词等。通过部署EFK套件,打包定制的日志插件,并在项目中引用,实现了完整且方便的日志查看和搜索功能。
摘要由CSDN通过智能技术生成

继续上篇文章java logback 向 EFK 写入日志, 此篇文章主要讲述在docker环境下EFK与logback的整合,主要解决java项目在docker环境下,向EFK输出日志的问题:

  1. 上篇文章中的方法虽然可以向EFK写入日志,但是在集群环境中,无法区分容器,除非自己在日志的msg中写入相关信息,然而往往会被分词器分开,这点比较麻烦
  2. 虽然上篇文章中的logback-more-appenders可以使用DataFluentAppender方式来向elasticsearch添加额外的fields,但是这里也同时存在一个问题,就是msg中的部分信息,会被拆分成多个field,导致msg信息不再完整,以及从kibana上面查看日志非常不便

下面来一起看看我是如何解决的(部分内容跟上篇文章同)

部署一套EFK

详情参考部署文档CentOS7 安装EFK(elasticsearch、fluent、kibana)进行Docker下日志搜集

打包日志插件(此处有不同)

源码地址:fluentd-logback-appender(此插件是我基于logback-more-appenders源码进行的改进,使得在使用FluentLogbackAppender类的时候,也可以添加额外的fields)

关于此插件的打包,这里不多做说明,相应jar包可以在刘迎光的nexus中找到,搜索“fluentd-logback-appender”即可

项目引用

pom.xml文件添加依赖


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值