Logback日志级别
日志级别指的是日志信息的类型,日志都会分级别,常见的日志级别如下(级别由低到高):
| 日志级别 |
说明 |
记录方式 |
| trace |
追踪,记录程序运行轨迹 【使用很少】 |
log.trace("…") |
| debug |
调试,记录程序调试过程中的信息,实际应用中一般将其视为最低级别 【使用较多】 |
log.debug("…") |
| info |
记录一般信息,描述程序运行的关键事件,如:网络连接、io操作 【使用较多】 |
log.info("…") |
| warn |
警告信息,记录潜在有害的情况 【使用较多】 |
log.warn("…") |
| error |
错误信息 【使用较多】 |
log.error("…") |
可以在配置文件logback.xml中,控制输出哪些类型的日志
1
2
3
4
5
|
<!-- 日志输出级别 -->
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
|
如上述代码,此时只会输出大于等于info级别的日志
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
@Slf4j
public class LogTest {
// private static final Logger log = LoggerFactory.getLogger(LogTest.class);
@Test
public void testLog(){
log.debug("开始计算...");
int sum = 0;
int[] nums = {1, 5, 3, 2, 1, 4, 5, 4, 6, 7, 4, 34, 2, 23};
for (int num : nums) {
sum += num;
}
log.info("计算结果为: {}", sum); // {}为占位符
log.debug("结束计算...");
log.trace("trace .....");
log.warn("warn ......");
log.error("error .....");
}
}
// 在上述配置情况下,输出结果如下
// 2025-09-02 22:19:50.974 [main] INFO com.itheima.LogTest - 计算结果为: 101
// 2025-09-02 22:19:50.980 [main] WARN com.itheima.LogTest - warn ......
// 2025-09-02 22:19:50.980 [main] ERROR com.itheima.LogTest - error .....
|
备注:如果有Lombok,可以直接在类前面加上@Slf4j,此时就可以省略private static final Logger log = LoggerFactory.getLogger(LogTest.class);