我很困惑。 当我安装了 SpringBoot Logback 时,SpringBoot 会轮换日志文件。然而,由于库的兼容性问题,我不得不切换到 log4j。日志记录仍然有效,但轮换日志文件不再有效。
我的 pom.xml 包括:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-spring-boot</artifactId>
</dependency>
我的application.properties文件包括:
# Logging pattern for file
logging.pattern.file= "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"
logging.logback.rollingpolicy.file-name-pattern="%d{yyyy-MM-dd HH:mm:ss} - %msg%n"
logging.logback.rollingpolicy.max-file-size=5MB
logging.logback.rollingpolicy.max-history=100
然而,日志不再像我使用 Logback 时那样旋转。
我不确定我是否需要一个单独的 log4j.properties 文件(我不这么认为)或者到底是什么关闭了 - 也就是说,为什么日志文件不再轮换。
希望得到建议。
谢谢,
试试这个:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
<version>${org.springframework.boot.version}</version>
<exclusions>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-jul</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-spring-boot</artifactId>
<version>2.20.0</version>
</dependency>