为了账号安全,请及时绑定邮箱和手机立即绑定

Spring boot slf4j/log4j 禁用每日 RollingFilePolicy

Spring boot slf4j/log4j 禁用每日 RollingFilePolicy

慕仙森 2023-08-04 14:49:09
我的 Spring boot 应用程序每天都会创建一个新的存档(名称类似于logging.log.2019-08-30.0.gz)并开始登录新文件。无论过去了多少天,禁用此功能并让记录器登录到旧文件的方法是什么?我大约 1.5 年前创建了一个 Spring boot 应用程序,它的记录器没有这种行为,但我最近创建的记录器有这种行为。可能跟新版本有关系?我使用几乎完全相同的配置,但仍然......每天都会发生新的日志。我尝试了很多在网上找到的东西,但所有帖子都讨论如何添加它,而不是如何删除它。以下是与登录相关的所有设置application.properties(我不使用任何类型的额外配置):logging.level.root=INFOlogging.level.org=WARNlogging.level.com=WARNlogging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %c{1} - %msg%nlogging.pattern.file=%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %c - %msg%nlogging.file=logging.loglogging.file.max-size=1GB依赖项的完整列表pom.xml(所有最新版本):spring-boot-starter-data-jpathymeleaf-spring3spring-boot-starter-securityspring-boot-starter-webspring-boot-starter-mailmysql-connector-javaspring-boot-configuration-processor我创建和使用记录器的方式:private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(MyController.class);...log.info("My controller did something!");
查看完整描述

1 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

经过几个小时的搜索如何删除RollingFilePolicy而不使用后logback.xml我放弃了。因此,为了实现它(并保留我当前的日志附加程序),我logback.xml在文件中添加了一个文件src/main/resources,如下所示:


<?xml version="1.0" encoding="UTF-8"?>

<configuration>

    <include

        resource="org/springframework/boot/logging/logback/defaults.xml" />

    <property name="LOG_FILE"

        value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/spring.log}" />



    <appender name="FILE"

        class="ch.qos.logback.core.FileAppender">

        <encoder>

            <pattern>${FILE_LOG_PATTERN}</pattern>

        </encoder>

        <file>${LOG_FILE}</file>

    </appender>

    <appender name="CONSOLE"

        class="ch.qos.logback.core.ConsoleAppender">

        <encoder>

            <pattern>${CONSOLE_LOG_PATTERN}</pattern>

        </encoder>

    </appender>


    <root level="INFO">

        <appender-ref ref="CONSOLE" />

        <appender-ref ref="FILE" />

    </root>

</configuration>

我根据org/springframework/boot/logging/logback/包内的 spring 日志记录默认值创建了它,忽略FileAppender.xml文件。


请注意,正如 Spring 的github 存储库中所示,默认日志记录配置正在更改,并且这些 XML 文件不存在。


查看完整回答
反对 回复 2023-08-04
  • 1 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信