Spring boot集成plumelog日志系统

本文介绍了如何将PlumeLog集成到Spring Boot项目中,作为一款轻量级的分布式日志系统,PlumeLog提供基于log4j、log4j2、logback的日志收集,支持redis和kafka,高吞吐且不占用本地磁盘空间。文章详细讲解了服务端安装、配置修改、创建Spring Boot项目并配置日志收集的过程。
摘要由CSDN通过智能技术生成

近几日闲来无事,工作摸鱼之时在码云上发现一个更加轻量级的分布式日志系统 PlumeLog ,就研究了一下,写了一个demo,做个记录

一、PlumeLog简介

  • 无入侵的分布式日志系统,基于log4j、log4j2、logback搜集日志,设置链路ID,方便查询关联日志

  • 基于elasticsearch作为查询引擎

  • 高吞吐,查询效率高

  • 全程不占应用程序本地磁盘空间,免维护;对于项目透明,不影响项目本身运行

  • 无需修改老项目,引入直接使用,支持dubbo,支持springcloud

二、准备工作

服务端安装

  • 首先是消息队列,PlumeLog适配了redis或kafka,一般项目redis足够了,我这边也是直接用redis,redis 官网: https://redis.io

  • 然后需要安装elasticsearch,官网下载地址: https://www.elastic.co/cn/downloads/past-releases

  • 最后下载Plumelog的程序包,plumelog-server,下载地址: https://gitee.com/frankchenlong/plumelog/releases

服务启动

  • 启动redis,确保本地可以连接redis(服务器安全组开放端口,redis配置可访问ip)

  • 启动elasticsearch,默认启动端口是9200,直接访问显示这个就代表启动成功了

三、修改配置

Plumelog的压缩包解压后有这些文件

编辑切换为居中

添加图片注释,不超过 140 字(可选)

修改application.properties,这边贴上我的配置,主要要改的就是redis和es的配置

 
 

spring.application.name=plumelog_server server.port=8891 spring.thymeleaf.mode=LEGACYHTML5 spring.mvc.view.prefix=classpath:/templates/ spring.mvc.view.suffix=.html spring.mvc.static-path-pattern=/plumelog/** #值为4种 redis,kafka,rest,restServer #redis 表示用redis当队列 #kafka 表示用kafka当队列 #rest 表示从rest接口取日志 #restServer 表示作为rest接口服务器启动 #ui 表示单独作为ui启动 plumelog.model=redis #如果使用kafka,启用下面配置 #plumelog.kafka.kafkaHosts=172.16.247.143:9092,172.16.247.60:9092,172.16.247.64:9092 #plumelog.kafka.kafkaGroupName=logConsumer #redis配置,3.0版本必须配置redis地址,因为需要监控报警 plumelog.redis.redisHost=127.0.0.1:6379 #如果使用redis有密码,启用下面配置 plumelog.redis.redisPassWord=123456 plumelog.redis.redisDb=0 #如果使用rest,启用下面配置 #plumelog.rest.restUrl=http://127.0.0.1:8891/getlog #plumelog.rest.restUserName=plumelog #plumelog.rest.restPassWord=123456 #elasticsearch相关配置 plumelog.es.esHosts=127.0.0.1:9200 #ES7.*已经去除了索引type字段,所以如果是es7不用配置这个,7.*以下不配置这个会报错 #plumelog.es.indexType=plumelog #索引分片数量设定,建议值:单日日志大小/ES节点机器jvm内存大小 合理的分片大小保证ES写入效率和查询效率 plumelog.es.shards=5 plumelog.es.replicas=0 plumelog.es.refresh.interval=30s #日志索引建立方式day表示按天、hour表示按照小时 plumelog.es.indexType.model=day #ES设置密码,启用下面配置 #plumelog.es.userName=elastic #plumelog.es.passWord=FLMOaqUGamMNkZ2mkJiY #单次拉取日志条数 plumelog.maxSendSize=5000 #拉取时间间隔,kafka不生效 plumelog.interval=1000 #plumelog-ui的地址 如果不配置,报警信息里不可以点连接 plumelog.ui.url=http://127.0.0.1:8891 #管理密码,手动删除日志的时候需要输入的密码 admin.password=123456 #日志保留天数,配置0或者不配置默认永久保留 admin.log.keepDays=30 #登录配置 #login.username=admin #login.password&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值