logback-spring.xml的配置备忘

博客介绍了Logback日志配置的生效规则,多个root节点时,最后一个root节点的日志级别生效;若root节点日志级别为info,logger节点配置为debug也可生效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.如果有多个root节点,则最后面的root节点的日志级别生效。

2.如果root节点的日志级别为info,在logger节点的level配置为debug也能生效。

### 配置 Spring Boot 中的日志记录 为了在 Spring Boot 项目中正确配置 `logback-spring.xml` 来实现日志记录,需遵循特定结构和参数设置。此文件通常位于项目的 `src/main/resources` 目录下[^3]。 #### 日志配置文件位置 确保 `logback-spring.xml` 文件放置于 `src/main/resources/` 下,以便被应用程序识别并加载作为默认的日志框架配置文件。 #### 基础配置示例 下面是一个基础的 `logback-spring.xml` 的 XML 结构: ```xml <configuration> <!-- 定义日志级别 --> <root level="INFO"> <appender-ref ref="CONSOLE"/> <appender-ref ref="FILE"/> </root> <!-- 控制台输出 --> <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>%d{yyyy-MM-dd HH:mm:ss} %-5level %logger{36} - %msg%n</pattern> </encoder> </appender> <!-- 文件输出 --> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <file>logs/app.log</file> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <!-- 每天生成一个新的日志文件 --> <fileNamePattern>logs/archived/app-%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> <maxFileSize>10MB</maxFileSize> </timeBasedFileNamingAndTriggeringPolicy> </rollingPolicy> <encoder> <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern> </encoder> </appender> </configuration> ``` 上述代码展示了如何通过控制台和滚动文件两种方式来记录不同级别的消息,并设置了最大文件大小为10 MB以及按日期归档旧日志文件的功能[^4]。 #### 动态切换环境配置 对于环境部署场景,在 `application.yml` 或者其他形式的应用程序属性文件里可以动态指定不同的 logback 配置文件路径,例如开发、测试或生产环境中各自独立的日志策略[^2]: ```yaml spring: application: name: 'your-app-name' profiles: active: dev # 可能是 "prod", "test" 等 logging: config: classpath:logback/${spring.profiles.active}.xml ``` 这样可以根据激活的不同 profile 加载相应的日志配置文件,比如当应用处于开发模式(`dev`)时会读取名为 `logback/dev.xml` 的配置;而在生产环境下则可能是 `logback/prod.xml`。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值