logback日志输出配置范例

logback日志输出配置范例

wutool中,提供了logback日志输出配置范例,实现日志文件大小限制、滚动覆盖策略、定时清理等功能。

关于wutool

wutool是一个java代码片段收集库,针对特定场景提供轻量解决方案,只要按需选择代码片段拷贝使用即可。项目git地址https://github.com/handsomestWei/wutool,欢迎star

logback配置说明

配置文件链接https://github.com/handsomestWei/wutool/tree/main/src/main/resources/logback.xml

日志配置热更新

修改logback.xml后无需重启服务,自动生效。需设定修改后配置生效的间隔。

xml 复制代码
<configuration scan="true" scanPeriod="60 seconds">

日志文件控制

文件大小限制、滚动覆盖策略、定时清理等。

xml 复制代码
	<appender name="file_debug" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}/sys-debug.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
            <fileNamePattern>${log.path}/sys-debug.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
            <!--每个文件的大小限制-->
            <MaxFileSize>200MB</MaxFileSize>
            <!--最多保留x天的文件,x天之前的将被清除-->
            <MaxHistory>7</MaxHistory>
            <!--该滚动策略日志的总大小,超过的日志会被清除-->
            <totalSizeCap>1GB</totalSizeCap>
            <!--启动时清理日志文件,清理超过保留天数的,也会清理超过总大小的-->
            <cleanHistoryOnStart>true</cleanHistoryOnStart>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
            <charset>UTF-8</charset>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- 过滤的级别 DEBUG-->
            <level>DEBUG</level>
            <!-- 匹配时的操作:接收(记录) -->
            <onMatch>ACCEPT</onMatch>
            <!-- 不匹配时的操作:拒绝(不记录) -->
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>

日志输出格式

附加了traceId,需要配合调用链id注入模块使用,可参考wutooltraceId注入过滤器

xml 复制代码
<property name="log.pattern"
              value="%d{HH:mm:ss.SSS} - [%thread] - [%X{traceId}] - %-5level %logger{20} - [%method,%line] - %msg%n"/>
相关推荐
凤年徐3 小时前
飞算JavaAI全链路实战:智能构建高可用电商系统核心架构
java开发·飞算javaai炫技赛
爱吃烤鸡翅的酸菜鱼3 天前
飞算JavaAI炫技赛:电商系统开发全流程实战解析
ai·java开发·飞算javaai炫技赛
工藤学编程3 天前
飞算JavaAI炫技赛:在线图书借阅平台的设计与实现
java开发·飞算javaai炫技赛
master-dragon3 天前
java log相关:Log4J、Log4J2、LogBack,SLF4J
java·log4j·logback
倔强的石头1064 天前
利用飞算Java打造电商系统核心功能模块的设计与实现
java·ai编程·电商系统·java开发·飞算javaai炫技赛
可涵不会debug4 天前
飞算JavaAI开发在线图书借阅平台全记录:从0到1的实践指南
java开发·飞算javaai炫技赛
是枚小菜鸡儿吖4 天前
基于飞算JavaAI的学生成绩综合统计分析系统
java开发·飞算javaai炫技赛
Lethehong5 天前
飞算JavaAI炫技赛:一天完成学生成绩综合统计分析系统开发(含源码)
java·java开发·飞算java炫技赛
羑悻的小杀马特5 天前
飞算JavaAI真能帮小白搞定在线图书借阅系统?开发效果大揭秘!
java开发·飞算javaai炫技赛
倔强的小石头_6 天前
基于飞算JavaAI的在线图书借阅平台设计与实现
java·java开发·飞算javaai炫技赛