logback.xml配置文
时间: 2024-12-31 22:24:41 浏览: 41
### Logback.xml 配置示例
#### 日志记录器 (Logger)
日志记录器用于指定不同包或类的日志级别。默认情况下,所有未特别设置级别的记录器都会继承根记录器的级别。
```xml
<configuration>
<!-- 定义全局变量 -->
<property name="LOG_PATH" value="/var/log/myapp"/>
<!-- 控制台输出配置 -->
<appender name="STDOUT" 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>${LOG_PATH}/myapp.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- 每天生成一个新的日志文件 -->
<fileNamePattern>${LOG_PATH}/archived/myapp.%d{yyyy-MM-dd}.log.gz</fileNamePattern>
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
</encoder>
</appender>
<!-- 设置 root logger 级别并关联 appender -->
<root level="info">
<appender-ref ref="STDOUT"/>
<appender-ref ref="FILE"/>
</root>
<!-- 特定包的日志级别可以单独设定 -->
<logger name="com.example.myapp.service" level="debug"/>
</configuration>
```
此配置实现了基本的日志管理功能,包括但不限于:
- 将日志打印到控制台上;
- 同时将日志写入文件中,并按日期滚动保存旧的日志文件;
- 使用占位符 `${}` 来动态获取外部配置中的路径信息[^1];
对于更复杂的场景,还可以进一步调整 `<appender>` 和其他组件来满足特定需求,比如异步日志、邮件通知等高级特性[^2]。
阅读全文
相关推荐














