实时分布式日志系统plumelog落地

一起养成写作习惯!这是我参加“一神论计划4月份经文挑战”的第25天。点击查看活动详细信息。

一.系统介绍

基于Log4j、log4j2和服务器价格logback收集日志,设置链接ID,以便于查看相关日志的无代码分布式日志系统

基于Elasticse server arch作为查询引擎

高吞吐量、高查询效率

完全不占用应用程服务器价格序本地磁盘空间,application不需要应用程序维护:项目透明度不会影响项目服务器内存条可以用在台式机上吗本身的执行

不需要修改现有项目,引入直接使用,支持dubbo,支持springclou接口文档d

二.架构

实时分布式日志系统plumelog落地

这里有两个版本。

Plumelog-lite edition,无部署直接引用到项目中,不appstore依赖服务器直接启动到外部中间件,部署非常方便,包含功能,日志查询,链接跟踪,日志管理,非常适合独立的小型项目,现https和http的区别在是springboot logbaaappearanceppetiteck

Redis、kafka型号需要单独的部署服务。可以设置接口测试用例设计组分接口类型布式部署。适合大型玩家、互联网公司。

三.应用

3.1 lite应用

3.1.1 修改pom文件

Dependency

GroupIdcom.plumelog/groupId

工件dplume log-lite-spring-boot-s接口类型tarter/工件id

版本3.5.2/版本

/dependency

3.1.2 配置logback.xmlhttp代理

appender name= ‘ plume log ‘ class= ‘ com . plume log . lite .dubbo面试题 log back . appendeapprover . l接口测试用例设计ithttp 404e appender

AppNameplumelog/appappstoreName

!-将日志保存到-

LogPath/plumelog/lite/logPath

!-日志保留天数-

Kepday 30/Kepdaappeary

/appender

!-ref -添加-

根l

evel=“INFO”> <app服务器内存和台式机内存区别ender-ref ref=服务器租用多少钱一年plumdubbo是什么elog”/> </root>

3http://www.baidu.com.1.3 在springboot启动类appreciate里添加扫描路径

如果原来你的项目没有扫描路径,不APP要只加这个,也要把你自己的项目的加了,不然只扫描plumelog的路径了。

@ComponentScan("com.plumelog")

3接口文档.1.4 访问

启动你的appetite项目:输入你的项目地址+plumelog/#接口自动化/访问,例如:http://localhost:8083/plumelog/#/

一定要加这个/#/后缀

实时分布式日志系统plumelog落地

3.1.5 实现控制台时时日志

还提供了控制台的时时日志,按下下文配置即可appstore

实时分布式日志系统plumelog落地

3.1.6 异常

有些用3.5版本会报错:org.apache.lucen接口卡e.store.LockObtainFailedException: Lock held by this virtual machine

  1. springcdubbo负载均衡的几种方式ldubbo面试题oud-alibabHTTPa需要在你的启动类里dubbo是什么面加:Sdubbo和feign的区别ystem.setProdubbo原理和机制perty(“spring.appointmentcAPPloud.dubbo原理和机制bootstrap.enabled”, “false”);

    public static void main(String[] args) {
            System.setProperty("spring.cloud.bootstrap.enabled", "false");
            SpringApplication.run(LogServerStart.class, args);
            }
    
  2. 服务器内存和台式机内存区别果用的log服务器操作系统back.xml 改成logbdubbo和zookeeperack-spring.dubbo原理和机制xml;

请参考官dubbo怎么念方文档:gitehttp 404e.com/plumeorDubbog/pap接口自动化provel…

3.2 独立搭建版本

3.2.dubbo是什么1 服务端安装

  1. 安装 redis 或者 kafka(一般公司redis足够) 安装 el接口卡asticsearch
  2. 下载安装包,plumelogappetitehttp://192.168.1.1登录server
  3. 下载地址:gitee.c服务器系统om/plumeorg/pl…
  4. 配置plume服务器租用多少钱一年log-server,并启动,redis和kadubbo框架fka作为队列模式下可以部署多个plumelog服务器租用-server达到高可用,配置一接口类型样即可

实时分布式日志系统plumelog落地

3.2.2 配置解析

#值为4种 redis,kafka,rest,restServer,lite
#redis 表示用redis当队列
#kafka 表示用kafka当队列
#rest 表示从rest接口取日志
#restServer 表示作为rest接口服务器启动
#ui 表示单独作为ui启动
#lite 简易模式启动不需要配置redis,es等
plumelog.model=redis
#lite模式下日志存储路径
#plumelog.lite.log.path=/lucene
#如果使用kafka,启用下面配置
#plumelog.kafka.kafkaHosts=172.16.247.143:9092,172.16.247.60:9092,172.16.247.64:9092
#plumelog.kafka.kafkaGroupName=logConsumer
#队列redis地址,model配置redis集群模式,哨兵模式用逗号隔开,队列redis不支持集群模式,lite模式可以全部注释掉下面配置
#当redis队列性能不够的时候,可以不同的项目单独配置单独的redis队列,用单独的plumelog-server去采集,公用一个管理redis
plumelog.queue.redis.redisHost=127.0.0.1:6379
#如果使用redis有密码,启用下面配置
#plumelog.queue.redis.redisPassWord=123456
#如果要切换db,redis必须要配置密码
#plumelog.queue.redis.redisDb=0
#哨兵模式需要配置的
#plumelog.queue.redis.sentinel.masterName=myMaster
#redis解压缩模式,开启后不消费非压缩的队列
#plumelog.redis.compressor=true
#管理端redis地址 ,集群用逗号隔开,不配置将和队列公用,lite模式可以全部注释掉下面配置,管理redis单独使用的时候支持集群模式
#plumelog.redis.redisHost=127.0.0.1:6379
#如果使用redis有密码,启用下面配置
#plumelog.redis.redisPassWord=123456
#plumelog.redis.redisDb=0
#哨兵模式需要配置的
#plumelog.redis.sentinel.masterName=myMaster
#如果使用rest,启用下面配置
#plumelog.rest.restUrl=http://127.0.0.1:8891/getlog
#plumelog.rest.restUserName=plumelog
#plumelog.rest.restPassWord=123456
#elasticsearch相关配置,Hosts支持携带协议,如:http、https,集群逗号隔开,lite模式可以全部注释掉下面配置
plumelog.es.esHosts=127.0.0.1:9200
plumelog.es.shards=5
plumelog.es.replicas=1
plumelog.es.refresh.interval=30s
#日志索引建立方式day表示按天、hour表示按照小时
plumelog.es.indexType.model=day
#hour模式下需要配置这个
#plumelog.es.maxShards=100000
#ES设置密码,启用下面配置
#plumelog.es.userName=elastic
#plumelog.es.passWord=elastic
#是否信任自签证书
#plumelog.es.trustSelfSigned=true
#是否hostname验证
#plumelog.es.hostnameVerification=false
#以下配置不管什么模式都要配置
#单次拉取日志条数
plumelog.maxSendSize=100
#拉取时间间隔,kafka不生效
plumelog.interval=100
#plumelog-ui的地址 如果不配置,报警信息里不可以点连接
plumelog.ui.url=http://demo.plumelog.com
#管理密码,手动删除日志的时候需要输入的密码
admin.password=123456
#日志保留天数,配置0或者不配置默认永久保留
admin.log.keepDays=30
#链路保留天数,配置0或者不配置默认永久保留
admin.log.trace.keepDays=30
#登录配置,配置后会有登录界面
#login.username=admin
#login.password=admin

只需要更改redis、es等配置即接口自动化可,appappearearance如果有其他配置,请参考注释修接口自动化改。

3.appearappetite2.3 springboot+ldubbo和zookeeperogback整合

其中项目使用了spring cloud alibaba +feign生态,经检测完美运行。

3.2.3.1 pom.xml引入

<dependency>
    <groupId>com.plumelog</groupId>
    <artifactId>plumelog-logback</artifactId>
    <version>3.5.2</version>
</dependency>

3.服务器内存和台式机内存区别接口测试用例设计口文档2.3.2 logback-spring.xml引入

在logback-spring.xml适当的位置根据自己dubbo面试题选型加入下文配置。

<appenders>
    <!--使用redis启用下面配置-->
    <appender name="plumelog" class="com.plumelog.logback.appender.RedisAppender">
        <appName>plumelog</appName>
        <redisHost>172.16.249.72:6379</redisHost>
        <redisAuth></redisAuth>
    </appender>
</appenders>
        <!--使用上面三个三选一加入到root下面-->
<root level="INFO">
<appender-ref ref="plumelog"/>
</root>

其中配置各个配置项解释如下:

  1. ap服务器是什么pName:自定义应用名称
  2. redisHosthttp 302:redis地址,哨兵模式多个用逗号隔开
  3. redidubbo和feign的区别sAuth:r接口类型edis密码

3.2.approach4 检测

访问ip:8891即可。同时启动整合后的sprindubbo负载均衡的几种方式gBoot项目。

页面统一管理整合进系统的日志,同时接口服务器系统类型可以通过上放查询条件查询。

实时分布式日志系统plumelog落地

3.2.httpwatch5http 500 时时日志

http 302以连接application具体服务,查看时时日志。

实时分布式日志系统plumelog落地

3.2.6 错误日志统计

可以查看错误日志的数量与类application

实时分布式日志系统plumelog落地

3.2.7 错误报警

在一定服务器租用多少钱一年时间产生appreciate的错误可以通过钉钉、企业dubbo原理和机制微信httpclient等发起通知。

实时分布式日志系统plumelog落地
钩子为机器人的Webhappearanceook,dubbo框架请自行编写。成功后的情况如下。
实时分布式日志系统plumelog落地

本文只介绍redis版本,如需http 404要kafka版本,httpclient请自行参考文档:gitee.com/plumeorg/pl…

发表评论

提供最优质的资源集合

立即查看 了解详情