踩坑,logback无法按照日期生成日志文件,只在启动时生成一个日志文件

logback无法按照日期每天生成日志

原配置:

<appender name="INFO_FILE" class="ch.qos.logback.core.FileAppender">
        
        <!--日志文档输出格式-->
        <Prudent>true</Prudent>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} --- %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
        <!--         日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 每天日志归档路径以及格式 -->
            <!--日志文件输出的文件名,按小时生成-->
            <FileNamePattern>${log_path}/%d{yyyy-MM-dd-HH-mm}/info/info.%d{yyyy-MM-dd-HH-mm}.log</FileNamePattern>
            <!--日志文件保留天数-->
            <MaxHistory>30</MaxHistory>
            <maxFileSize>3KB</maxFileSize>
<!--            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">-->
<!--                &lt;!&ndash; 除按日志记录之外,还配置了日志文件不能超过10M(默认),若超过10M,日志文件会以索引0开始, &ndash;&gt;-->
<!--                <maxFileSize>10MB</maxFileSize>-->
<!--            </timeBasedFileNamingAndTriggeringPolicy>-->

            <!--日志文档保留天数-->
            <maxHistory>90</maxHistory>
        </rollingPolicy>
        <!-- 此日志文档只记录info级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>info</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- 此日志文档记录info及以上级别的 -->
        <!--        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">-->
        <!--            <level>info</level>-->
        <!--        </filter>-->
    </appender>

原因出在appender标签中,使用了ch.qos.logback.core.FileAppender这个类,FileAppender不会执行rolling政策,应该换成:ch.qos.logback.core.rolling.RollingFileAppender

修改后的配置:

<appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">

        <!--日志文档输出格式-->
        <Prudent>true</Prudent>
        <encoder>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} --- %msg%n</pattern>
            <charset>UTF-8</charset>
        </encoder>
        <!--         日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 每天日志归档路径以及格式 -->
            <!--日志文件输出的文件名,按小时生成-->
            <FileNamePattern>${log_path}/%d{yyyy-MM-dd-HH-mm}/info/info.%d{yyyy-MM-dd-HH-mm}.log</FileNamePattern>
            <!--日志文件保留天数-->
            <MaxHistory>30</MaxHistory>
            <maxFileSize>3KB</maxFileSize>
<!--            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">-->
<!--                &lt;!&ndash; 除按日志记录之外,还配置了日志文件不能超过10M(默认),若超过10M,日志文件会以索引0开始, &ndash;&gt;-->
<!--                <maxFileSize>10MB</maxFileSize>-->
<!--            </timeBasedFileNamingAndTriggeringPolicy>-->

            <!--日志文档保留天数-->
            <maxHistory>90</maxHistory>
        </rollingPolicy>
        <!-- 此日志文档只记录info级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>info</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- 此日志文档记录info及以上级别的 -->
        <!--        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">-->
        <!--            <level>info</level>-->
        <!--        </filter>-->
    </appender>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值