【问题标题】:Spring boot, logging a specific package to file and not to console [closed]春季启动,将特定包记录到文件而不是控制台[关闭]
【发布时间】:2025-12-04 12:20:10
【问题描述】:

我想记录一个特定的包只是为了归档,而不是控制台。

这个特定的包会生成很多日志条目,因此我不想用这些消息污染控制台。我需要该日志来跟踪“随机奇怪的错误”。

我该怎么做?

【问题讨论】:

    标签: logging spring-boot


    【解决方案1】:

    请查看Spring Boot logging documentation。 Spring Boot 支持的所有现代日志框架(例如 Logback 或 Log4j)都非常易于针对此类情况进行配置...

    例如使用 Logback 你会做这样的事情:

    <configuration>
        <appender name="FILE" class="ch.qos.logback.core.rolling.FilAppender">
            <file>/var/log/my-app.log</file>
            <encoder>
                <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg%n</pattern>
            </encoder>
        </appender>
    
        <root level="INFO">
            <appender-ref ref="FILE" />
        </root>
    </configuration>
    

    您也可以查看suppress all logback output to console 的其他答案,我的只是一个示例。

    【讨论】: