Git Product home page Git Product logo

fayechenlong / plumelog Goto Github PK

View Code? Open in Web Editor NEW
340.0 340.0 98.0 103.94 MB

一个java分布式日志组件,支持百亿级别,日志从搜集到查询,不用去文件中翻阅日志方便快捷,支持查询一个调用链的日志,支持链路追踪,查看调用链耗时情况,在分布式系统中也可以查询关联日志,能够帮助快速定位问题,简单易用,没有代码入侵,查询界面友好,高效,方便,只要你是java系统,不要做任何项目改造,接入直接使用,日志不落本地磁盘,演示视频地址:https://v.qq.com/x/page/g3308uxlcnw.html

Home Page: http://www.plumelog.com

License: Apache License 2.0

Java 37.79% HTML 15.56% JavaScript 5.38% Vue 12.48% CSS 23.95% Shell 0.07% Less 0.22% Batchfile 0.01% Dockerfile 0.05% EJS 0.08% SCSS 4.41%

plumelog's People

Contributors

caijian0834 avatar delicious28 avatar fayechenlong avatar lovepaul avatar mr-xu-yingjun avatar oldratlee avatar songshuohua avatar tank-zhu avatar wangyao11507 avatar wolcengit avatar yl-yue avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

plumelog's Issues

demo 启动报错,redis是正常启动

com.plumelog.core.exception.LogQueueConnectException: redis 写入失败!
at com.plumelog.core.redis.RedisClient.putMessageList(RedisClient.java:135)
at com.plumelog.core.MessageAppenderFactory.push(MessageAppenderFactory.java:63)
at com.plumelog.core.MessageAppenderFactory.startTraceLog(MessageAppenderFactory.java:110)
at com.plumelog.logback.appender.RedisAppender.lambda$start$1(RedisAppender.java:119)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: redis.clients.jedis.exceptions.JedisExhaustedPoolException: Could not get a resource since the pool is exhausted
at redis.clients.jedis.util.Pool.getResource(Pool.java:53)
at redis.clients.jedis.JedisPool.getResource(JedisPool.java:288)
at com.plumelog.core.redis.RedisClient.putMessageList(RedisClient.java:128)
... 6 more
Caused by: java.util.NoSuchElementException: Unable to validate object
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:491)
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:354)
at redis.clients.jedis.util.Pool.getResource(Pool.java:50)
... 8 more

不产生链路traceId

后台打印了这个2021-07-22 16:34:32.788 INFO 19496 --- [ scheduling-1] c.plumelog.trace.aspect.AbstractAspect : TRACE:{"messageType":"void com.admin.task.ScheduleTask.sendSystemNoticeTask()","position":">","positionNum":2}
,说明进入aop里了,但是traceId为null

是否有支持子账号呢?

现在只有一个admin账号,公司有好几个项目要集成,所有日志都在一起,只有一个账号不太友好。请问有没有计划出一个子账号的功能,不同账号分配不同的项目,只允许查看分配的项目日志?

Dependency org.apache.httpcomponents:httpclient-cache, leading to CVE problem

Hi, In /plumelog-core,there is a dependency **org.apache.httpcomponents:httpclient:jar:4.5.9
** that calls the risk method.

CVE-2020-13956

The scope of this CVE affected version is [,4.5.13)

After further analysis, in this project, the main Api called is org.apache.http.client.utils.URIUtils: extractHost(java.net.URI)Lorg.apache.http.HttpHost

Risk method repair link : GitHub

CVE Bug Invocation Path--

Path Length : 5

com.plumelog.core.util.HttpClient: doPostBody(java.lang.String,java.lang.String)Ljava.lang.String; /.m2/repository/org/apache/kafka/kafka-clients/2.5.0/kafka-clients-2.5.0.jar
org.apache.http.impl.client.CloseableHttpClient: execute(org.apache.http.client.methods.HttpUriRequest)Lorg.apache.http.client.methods.CloseableHttpResponse; /.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
org.apache.http.impl.client.CloseableHttpClient: execute(org.apache.http.client.methods.HttpUriRequest,org.apache.http.protocol.HttpContext)Lorg.apache.http.client.methods.CloseableHttpResponse; /.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
org.apache.http.impl.client.CloseableHttpClient: determineTarget(org.apache.http.client.methods.HttpUriRequest)Lorg.apache.http.HttpHost; /.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
org.apache.http.client.utils.URIUtils: extractHost(java.net.URI)Lorg.apache.http.HttpHost;

Dependency tree--

[INFO] com.plumelog:plumelog-core:jar:3.5.3
[INFO] +- redis.clients:jedis:jar:3.3.0:compile
[INFO] |  \- org.apache.commons:commons-pool2:jar:2.6.2:compile
[INFO] +- com.fasterxml.jackson.core:jackson-databind:jar:2.11.2:compile
[INFO] |  +- com.fasterxml.jackson.core:jackson-annotations:jar:2.11.2:compile
[INFO] |  \- com.fasterxml.jackson.core:jackson-core:jar:2.11.2:compile
[INFO] +- javax.servlet:javax.servlet-api:jar:4.0.1:provided
[INFO] +- org.springframework:spring-webflux:jar:5.1.18.RELEASE:provided
[INFO] |  +- io.projectreactor:reactor-core:jar:3.2.20.RELEASE:provided
[INFO] |  |  \- org.reactivestreams:reactive-streams:jar:1.0.2:provided
[INFO] |  +- org.springframework:spring-beans:jar:5.1.18.RELEASE:provided
[INFO] |  +- org.springframework:spring-core:jar:5.1.18.RELEASE:provided
[INFO] |  |  \- org.springframework:spring-jcl:jar:5.1.18.RELEASE:provided
[INFO] |  \- org.springframework:spring-web:jar:5.1.18.RELEASE:provided
[INFO] +- org.springframework:spring-webmvc:jar:5.1.9.RELEASE:provided
[INFO] |  +- org.springframework:spring-aop:jar:5.1.9.RELEASE:provided
[INFO] |  +- org.springframework:spring-context:jar:5.1.9.RELEASE:provided
[INFO] |  \- org.springframework:spring-expression:jar:5.1.9.RELEASE:provided
[INFO] +- org.apache.kafka:kafka-clients:jar:2.5.0:compile
[INFO] |  +- com.github.luben:zstd-jni:jar:1.4.4-7:compile
[INFO] |  +- org.lz4:lz4-java:jar:1.7.1:compile
[INFO] |  \- org.xerial.snappy:snappy-java:jar:1.1.7.3:compile
[INFO] +- com.alibaba:transmittable-thread-local:jar:2.11.5:compile
[INFO] +- com.google.guava:guava:jar:29.0-jre:compile
[INFO] |  +- com.google.guava:failureaccess:jar:1.0.1:compile
[INFO] |  +- com.google.guava:listenablefuture:jar:9999.0-empty-to-avoid-conflict-with-guava:compile
[INFO] |  +- com.google.code.findbugs:jsr305:jar:3.0.2:compile
[INFO] |  +- org.checkerframework:checker-qual:jar:2.11.1:compile
[INFO] |  +- com.google.errorprone:error_prone_annotations:jar:2.3.4:compile
[INFO] |  \- com.google.j2objc:j2objc-annotations:jar:1.3:compile
[INFO] \- org.apache.httpcomponents:httpclient:jar:4.5.9:compile
[INFO]    +- org.apache.httpcomponents:httpcore:jar:4.4.11:compile
[INFO]    +- commons-logging:commons-logging:jar:1.2:compile
[INFO]    \- commons-codec:commons-codec:jar:1.11:compile

Suggested solutions:

Update dependency version

Thank you very much.

更新规则配置失败 {}

环境:docker 安装
plumelog version:3.5.1
kafka:12月最新版
es7
配置方面:使用kafka做队列,redis配置注释掉的
报错信息:
2023-03-01 14:30:00.000 ERROR 1 --- [taskScheduler-3] c.p.s.monitor.PlumeLogMonitorListener : 更新规则配置失败 {}

java.lang.NullPointerException: null

at com.plumelog.server.monitor.PlumeLogMonitorRuleConfig.initMonitorRuleConfig(PlumeLogMonitorRuleConfig.java:66)


at com.plumelog.server.monitor.PlumeLogMonitorRuleConfig.configureTasks(PlumeLogMonitorRuleConfig.java:80)


at jdk.internal.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)


at java.base/java.lang.reflect.Method.invoke(Unknown Source)


at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84)


at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)


at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93)


at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)


at java.base/java.util.concurrent.FutureTask.run(Unknown Source)


at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)


at java.base/java.lang.Thread.run(Unknown Source)

java.lang.NullPointerException

at com.plumelog.server.monitor.PlumeLogMonitorRuleConfig.initMonitorRuleConfig(PlumeLogMonitorRuleConfig.java:66)


at com.plumelog.server.monitor.PlumeLogMonitorRuleConfig.configureTasks(PlumeLogMonitorRuleConfig.java:80)


at jdk.internal.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)


at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)


at java.base/java.lang.reflect.Method.invoke(Unknown Source)


at org.springframework.scheduling.support.ScheduledMethodRunnable.run(ScheduledMethodRunnable.java:84)


at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54)


at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:93)


at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)


at java.base/java.util.concurrent.FutureTask.run(Unknown Source)


at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)


at java.base/java.lang.Thread.run(Unknown Source)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.