rocketmq日志rocketmq_client.log太大问题

1、在springboot启动类添加

复制代码
System.setProperty(ClientLogger.CLIENT_LOG_USESLF4J,"true");

2、找到项目中的logback-spring.xml文件,可以ctrl+n搜索文件查找文件。,然后追加以下配置。这里需要注意,日志等级需要配置,不然容器那边没法正常打印日志。

复制代码
<appender name="RocketmqClientAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
				<!-- 日志文件保存路径 -->
              <file>/root/logs/rocketmqlogs/rocketmq_client.log</file>
              <append>true</append>
              <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
                     <FileNamePattern>/root/logs/mq/rocketMQclient-%d{yyyy-MM-dd}.%i.log</FileNamePattern>
                     <!-- 日志文件最大尺寸 -->
                     <maxFileSize>300MB</maxFileSize>
                     <!--日志文件保留天数-->
                     <MaxHistory>10</MaxHistory>
                     <totalSizeCap>1GB</totalSizeCap> <!-- 日志总量大小,超过该值旧的日志文件将被清理-->
              </rollingPolicy>
              <encoder>
                     <pattern>%level %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] [%logger{0}] [%X{traceId}] [%msg]%n</pattern>
                     <charset class="java.nio.charset.Charset">UTF-8</charset>
              </encoder>
       </appender>
       <logger name="RocketmqClient" additivity="false">
              <!-- 这里可以按需配置日志级别 -->
              <level value="INFO" />
              <appender-ref ref="RocketmqClientAppender"/>
       </logger>

3、重新部署应用,验证日志,我应用是k8s部署的,所以找到应用所在的节点,进去应用所在节点服务器,执行

复制代码
#order为应用包含的名字
docker ps -q | xargs docker inspect --format '{{.State.Pid}}, {{.Id}}, {{.Name}}, {{.GraphDriver.Data.WorkDir}}' | grep order

4、然后根据命令查找到的docker文件路径进行查看文件是否正常,我配置的路径是/root/logs/rocketmqlogs/rocketmq_client.log

复制代码
#diff为项目自己应用自带的路径,如果找不到路径,可以直接进到容器里查找ketmqlogs/rocketmq_client.log 进去查找认证
tail -n 200 /var/lib/docker/overlay2/ffbe1261bae9f62b00d65a61ea54cdeb1cc693d5633ea244ccec8d205745e853/diff/root/logs/rocketmqlogs/rocketmq_client.log 
相关推荐
兮动人几秒前
Maven指定加载的类
java·maven·maven指定加载的类
wangkay8839 分钟前
【Java 转运营】Day04:抖音新号起号前准备全指南
java·开发语言·新媒体运营
亲爱的非洲野猪1 小时前
Java线程池深度解析:从原理到最佳实践
java·网络·python
亲爱的非洲野猪1 小时前
深入解析享元模式:用Java实现高性能对象复用
java·开发语言·享元模式
qq_401700411 小时前
Qt 事件处理机制
java·数据库·qt
rannn_1112 小时前
【Java项目】中北大学Java+数据库课设|校园食堂智能推荐与反馈系统
java·数据库·后端·课程设计·中北大学
NE_STOP2 小时前
SpringBoot-shiro-jwt-dubbo-redis分布式统一权限系统(完结)
java
zfj3212 小时前
java函数式接口 @FunctionalInterface用法
java·函数·function
TracyCoder1232 小时前
并发编程(二):Java原子类(Atomic Classes)全解析
java·原子类·atomic
野犬寒鸦3 小时前
从零起步学习MySQL || 第十六章:MySQL 分库分表的考量策略
java·服务器·数据库·后端·mysql