SpringBoot3 配置Logback日志滚动文件
创作时间:
作者:
@小白创作中心
SpringBoot3 配置Logback日志滚动文件
引用
CSDN
1.
https://blog.csdn.net/cm777/article/details/140955931
本文将详细介绍在SpringBoot3中配置Logback日志滚动文件的方法。由于SpringBoot3内置的Logback版本升级到了1.4.14,一些原有的配置可能不再适用。本文将通过具体的配置示例和代码分析,帮助读者解决在实际开发中遇到的日志配置问题。
环境
SpringBoot v3.3.2
内置的logback-core为1.4.14
配置问题与解决方案
在使用SpringBoot内置的Logback时,作者希望在configuration标签中自定义日志文件扫描大小的时间,于是尝试了以下配置:
<configuration debug="false" scan="true" scanPeriod="10 seconds">
</configuration>
但是无论怎样配置,发现该设置始终不生效。经过调查发现,这是由于SpringBoot版本升级导致内置的Logback版本变更,从而配置方式也发生了变化。
在查阅官方文档后,作者发现了一个重要的说明:
自1.3.12/1.4.12以来,鉴于检查文件大小是一项相对昂贵的操作,默认情况下每60秒执行一次。但是,您可以将不同的检查增量设置为持续时间。
因此,需要将logback-spring.xml的配置修改为以下形式:
通过分析相关代码可以进一步理解这个配置:
TimeBasedRollingPolicy类中持有了一个TimeBasedFileNamingAndTriggeringPolicy对象,而
TimeBasedFileNamingAndTriggeringPolicyBase是一个抽象类,
SizeAndTimeBasedFNATP是TimeBasedFileNamingAndTriggeringPolicyBase的一个实现
最终的配置如下:
ch.qos.logback.core.rolling.TimeBasedRollingPolicy是基于时间的滚动策略实现类,该类继承了ch.qos.logback.core.rolling.RollingPolicyBase类,而fileNamePattern就是该父类中的属性。官网文档中的说明,fileNamePattern是必须的属性。timeBasedFileNamingAndTriggeringPolicy是TimeBasedRollingPolicy中的一个接口对象,而ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP是该接口的实现类。maxFileSize和checkIncrement是SizeAndTimeBasedFNATP类的属性,分别代表着单个文件的存储量和日志文件的扫描时间,单位是毫秒,这里的10000毫秒也就是10秒钟扫描一次。
测试结果
经过上述配置调整后,日志文件能够按照预期进行滚动,以下是测试成功的日志文件列表:
重要说明
需要注意的是,基于时间的文件生成触发策略只能保证当到了checkIncrement的时间后开始扫描当前日志文件的大小,当数据量超过了maxFileSize,则生成新的文件。这也就意味着,如果在checkIncrement时间内有高频率的接口调用,那么当前日志的数据量是会超过maxFileSize的配置的。因此,建议使用较高的扫描频率来防止单个文件生成过多的数据量。
热门推荐
985上岸避雷指南:致2026年考研的你
骑车如何避免运动损伤
别样人生,ropz和他的教官们
电影《刘三姐》扮演者黄婉秋病逝
心学问心理教育,未来的探险家:如何激发孩子的好奇心和探索欲
外嫁女怎样申请征地补偿
对演法:提升演讲技巧的实用指南
线上减肥项目怎么管理
游戏开发公司如何实现资金管理?融资与投资策略全解析
《高中物理选修3-1第二章-第三节-欧姆定律》教学设计
五运六气如何才能用于临床
白眼球全是红血丝是什么原因
地球环境研究所揭示明朝衰亡可能始于万历大旱:来自过去460年水文记录的证据
天干什么时候可以合化,甲己合化后甲还是甲木吗
猎户座:赤道带上的璀璨星座
牛津大学研发类脑光子芯片,运算速度超人脑1000倍
蒸汽机的影响:工业革命的经济引擎及其深远变革
院校专业组怎样填报志愿?2024新高考不同组合怎么录取学生?
肝血不足的六大表现,快来自查
二战初期憋屈的反坦克炮—捷克Vz36型47毫米反坦克炮
如何筛选和评估行业股票的龙头企业?这些因素将影响其发展前景
次韵许浑写七绝4首,文笔各有长短,探讨诗词创作问题,提升水平
开学必备清单(30项),超实用,提前帮孩子准备!
2024丝绸之路(陕西)国际经贸合作发展交流对接活动在西安举办
宝宝消化不良时的辅食选择与添加指南
如何区分腓总神经损伤和坐骨神经损伤
毕业生薪酬大曝光!月收入稳中有升,但过万不足十分之一,电子信息类专业首超计算机类
以案释法|“无籽西瓜”变“有籽西瓜”!货不对板如何维权?
如何衡量你的跑步效果?——探秘心率区间
夜宵吃什么健康又营养又减肥呢