解决rocketmq-client日志保存路径的问题

 更新时间:2021年07月03日 10:51:39   作者:LYM0721  
这篇文章主要介绍了解决rocketmq-client日志保存路径的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

rocketmq-client日志保存路径

由于使用rocketmq-client会生成一个rocketmq_client.log日志文件,一般默认存于系统盘内,且持续增长速度较快,为便于清理且避免影响操作系统资源使用,建议手动设置其日志存储路径为当前程序运行目录下的logs文件夹。

参考操作方式:

系统启动时代码显式设置全局变量“rocketmq.client.logRoot”,

示例:

System.setProperty("rocketmq.client.logRoot","logs/");

Springboot项目可在启动类的main方法中设置,已验证有效。

参考示例:

 public static void main(String[] args) throws Throwable {
    System.setProperty("rocketmq.client.logRoot","logs/"); 
    SpringApplication.run(Application.class, args);
 }

关于rocketmq-client日志路径及其他配置详情,可见源码com.alibaba.rocketmq.client.log.ClientLogger中相关代码及其日志配置文件log4j_rocketmq_client.xml或logback_rocketmq_client.xml,

见下图:

日志路径代码配置 日志路径配置

rocketmq-client 日志问题处理

使用rocketmq后,默认会在{user.home}\logs\rocketmqlogs 目录下生成大量的mq跟踪日志,可以通过以下方式禁用或改变存储目录

方式一: rocketmq启用slf4j【推荐】

#设置系统属性

rocketmq.client.logUseSlf4j=true

启动参数 添加:

 -Drocketmq.client.logUseSlf4j=true 【推荐】 

或者启动类添加:

System.setProperty("rocketmq.client.logUseSlf4j","true") 

#logback日志配置

#Rocketmq apppender配置

<appender name="RocketmqClientAppender"
class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${log.base}/rocketmq.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>${log.base}/%d{yyyy-MM-dd}/rocketmq-%i.%d{yyyy-MM-dd}.log.gz
</fileNamePattern>
<TimeBasedFileNamingAndTriggeringPolicy 
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<MaxFileSize>30MB</MaxFileSize>
</TimeBasedFileNamingAndTriggeringPolicy>
</rollingPolicy>
<encoder>
<pattern>${pattern}</pattern>
</encoder>
</appender>

#Rocketmq logger配置

<logger name="RocketmqClient" additivity="false">
<level value="warn" />
<appender-ref ref="RocketmqClientAppender"/>
</logger>

方式二: 更改默认rocketmq路劲和级别

#设置系统属性

rocketmq.client.logRoot={日终路径}
rocketmq.client.logLevel={日志等级}

建议启动参数添加:

-Drocketmq.client.logRoot=/opt/appl/tomcat/logs/{应用名} -Drocketmq.client.logLevel=warn

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决Java中由于数据太大自动转换成科学计数法的问题

    解决Java中由于数据太大自动转换成科学计数法的问题

    今天小编就为大家分享一篇解决Java中由于数据太大自动转换成科学计数法的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • java、python、JavaScript以及jquery循环语句的区别

    java、python、JavaScript以及jquery循环语句的区别

    本篇文章主要介绍java、python、JavaScript以及jquery的循环语句的区别,这里整理了它们循环语句语法跟示例,以便大家阅读,更好的区分它们的不同
    2016-07-07
  • springBoot解决static和@Component遇到的bug

    springBoot解决static和@Component遇到的bug

    这篇文章主要介绍了springBoot解决static和@Component遇到的bug,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • springmvc path请求映射到bean 方法的流程

    springmvc path请求映射到bean 方法的流程

    这篇文章主要介绍了springmvc path请求映射到bean 方法的流程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-07-07
  • java并发编程之同步器代码示例

    java并发编程之同步器代码示例

    这篇文章主要介绍了java并发编程之同步器代码示例,分享了相关代码,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • Java解决浮点数计算不精确问题的方法详解

    Java解决浮点数计算不精确问题的方法详解

    在 Java 中,浮点数计算不精确问题指的是使用浮点数进行运算时,由于浮点数的内部表示方式和十进制数的表示方式存在差异,导致计算结果可能出现误差,本文就给大家介绍一下Java如何解决浮点数计算不精确问题,需要的朋友可以参考下
    2023-09-09
  • Spring AOP的概念与实现过程详解

    Spring AOP的概念与实现过程详解

    AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,可通过运行期动态代理实现程序功能的统一维护的一种技术。AOP是 Spring框架中的一个重要内容
    2023-02-02
  • 浅谈java对象结构 对象头 Markword

    浅谈java对象结构 对象头 Markword

    这篇文章主要介绍了浅谈java对象结构 对象头 Markword,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • SpringBoot如何打包自定义生成的包名

    SpringBoot如何打包自定义生成的包名

    这篇文章主要介绍了SpringBoot如何打包自定义生成的包名问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • mybatis-plus 拦截器敏感字段加解密的实现

    mybatis-plus 拦截器敏感字段加解密的实现

    数据库在保存数据时,对于某些敏感数据需要脱敏或者加密处理,本文主要介绍了mybatis-plus 拦截器敏感字段加解密的实现,感兴趣的可以了解一下
    2021-11-11

最新评论