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 
相关推荐
码农阿豪3 小时前
Nacos 日志与 Raft 数据清理指南:如何安全释放磁盘空间
java·安全·nacos
直有两条腿3 小时前
【大模型】Langchain4j
java·langchain
love530love3 小时前
Scoop 完整迁移指南:从 C 盘到 D 盘的无缝切换
java·服务器·前端·人工智能·windows·scoop
消失的旧时光-19433 小时前
C++ 多线程与并发系统取向(二)—— 资源保护:std::mutex 与 RAII(类比 Java synchronized)
java·开发语言·c++·并发
莫寒清3 小时前
ThreadLocal
java·面试
学习是生活的调味剂4 小时前
spring bean循环依赖问题分析
java·后端·spring
Coder_Boy_5 小时前
Java(Spring AI)传统项目智能化改造——商业化真实案例(含完整核心代码+落地指南)
java·人工智能·spring boot·spring·微服务
五阿哥永琪5 小时前
1. 为什么java不能用is开头来做布尔值的参数名,会出现反序列化异常。
java·开发语言
chilavert3186 小时前
技术演进中的开发沉思-371:final 关键字(中)
java·前端·数据库
海边的Kurisu6 小时前
Mybatis-Plus | 只做增强不做改变——为简化开发而生
java·开发语言·mybatis