java - 使用 Spring Boot 配置 Logback

标签 java spring logging spring-boot logback

我在 Spring Boot 应用程序中使用 Logback 进行日志管理,我如何需要这些规范:

  • 将所有内容记录到文件中
  • 将重要内容记录到控制台
  • 使用滚动策略,最大文件大小为 10MB

最佳答案

我使用了这个 logback.xml 配置文件,它运行得很好:

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

    <property name="DEV_HOME" value="logging"/>
    <appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <charset>UTF-8</charset>
            <Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</Pattern>
        </encoder>
    </appender>

    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${DEV_HOME}/debug.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover. Make sure the path matches the one in the file element or else
             the rollover logs are placed in the working directory. -->
            <fileNamePattern>${DEV_HOME}/archived/debug.%d{yyyy-MM-dd}.%i.log</fileNamePattern>

            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>5MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!-- keep 30 days' worth of history -->
            <maxHistory>30</maxHistory>
        </rollingPolicy>

        <encoder>
            <charset>UTF-8</charset>
            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
        </encoder>
    </appender>

    <root level="DEBUG">
        <appender-ref ref="FILE"/>
    </root>
    <root level="INFO">
        <appender-ref ref="consoleAppender" />
    </root>
</configuration>

关于java - 使用 Spring Boot 配置 Logback,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37049552/

相关文章:

java - 在 libgdx 中,如何为 box2d Body 对象添加摩擦力?

java - 无法从 JSON 解析 "Date"

spring 3.1 - netbeans - 部署失败

python - 如何在flask中将python日志按不同级别保存在不同文件中

java - Eclipse Maven 被阻止

java - Spring状态机嵌套机器同步运行

java - Spring 在普通 Java 程序中注入(inject)依赖项

logging - 如何将 RabbitMQ 日志记录级别设置为调试,真的?

java - 我可以使用 log4j 获得以下日志文​​件结构吗?

java - 我可以在 JEditorPane 上方但 JTabbedPane 下方获取 JTextField 吗?