日志未生成新日志文件

问题描述 投票:2回答:1

我正在Micronaut项目中使用以下logback.xml,它没有按照xml配置中提供的rollingPolicy生成新的日志文件。我尝试使用SizeAndTimeBasedRollingPolicy和TimeBasedRollingPolicy,但没有用。

Micronaut版本:1.2.2

经典的logback:1.2.3

文件:logback.xml

<configuration>

    <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>logs/my-app.log</file>
        <encoder>
            <pattern>%cyan(%d{yyyy-MM-dd HH:mm:ss.SSS}) %gray([%thread]) %highlight(%-5level) %magenta(%logger{36}):%line- %msg%n</pattern>
        </encoder>

        <rollingPolicy class="ch.qos.logback.core.rolling.RollingFileAppender">
            <fileNamePattern>
                logs/my-app.log-%d{yyyy-MM-dd}-%i.log.gz
            </fileNamePattern>
            <maxHistory>1</maxHistory>
            <totalSizeCap>1MB</totalSizeCap>
        </rollingPolicy>

    </appender>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%cyan(%d{yyyy-MM-dd HH:mm:ss.SSS}) %gray([%thread]) %highlight(%-5level) %magenta(%logger{36}):%line- %msg%n</pattern>
        </encoder>
    </appender>

    <root level="ALL">
        <appender-ref ref="FILE" />
        <appender-ref ref="STDOUT" />
    </root>


</configuration>
java pom.xml logback
1个回答
0
投票

如果我没记错,您的maxHistory策略会阻止您构建多个文件。相反,它会删除旧的,而只是在新的一天或达到1mb大小时创建一个新的。

maxHistory在这种情况下必须与您声明的TimeBasedRollingPolicy结合使用,然后maxHistory是几天的参数。没有TimeBasedRollingPolicy,它可能只是文件数。

© www.soinside.com 2019 - 2024. All rights reserved.