1. 代码中使用日志工具记录日志
- 添加日志记录操作
("/books")
public class BookController {
private static final Logger log = LoggerFactory.getLogger(BookController.class);
public String getById(){
System.out.println("hello spring boot!");
log.debug("debug...");
log.info("info...");
log.warn("warn...");
log.error("error...");
return "hello spring boot!";
}
}
日志级别
- TRACE:运行堆栈信息,使用率低
- DEBUG:程序员调试代码使用
- INFO:记录运维过程数据
- WARN:记录运维过程报警数据
- ERROR:记录错误堆栈信息
- FATAL:灾难信息,合并计入ERROR
- 设置日志输出级别
# 开启debug模式,输出调试信息,常用于检查系统运行状况
debug: true
# 设置日志级别,root表示根节点,即整体应用日志级别
logging:
level:
root: debug
- 设置日志组,控制指定包对应的日志输出级别,也可以直接控制指定包对应的日志输出级别
logging:
group:
ebank: com.xdr630.controller,com.xdr630.service,com.xdr630.dao
isserver: com.alibaba
level:
root: info
#设置某个包的日志级别
com.xdr630.controller: debug
# 设置分组,对某个组设置日志级别
ebank: warn
2. 小节
- 日志用于记录开发调试与运维过程消息
- 日志的级别共6种,通常使用4种即可,分别是 DEBUG,INFO,WARN,ERROR
- 可以通过日志组或代码包的形式进行日志显示级别的控制
3. 优化日志对象创建代码
- 使用lombok提供的注解
@Slf4j
简化开发,减少日志对象的声明操作
4. 日志输出格式控制
- PID:进程ID,用于表明当前操作所处的进程,当多服务同时记录日志时,该值可用于协助程序员调试程序
- 所属类/接口名:当前显示信息为SpringBoot重写后的信息,名称过长时,简化包名书写为首字母,甚至直接删除
日志输出格式控制
5. 日志输出格式控制
- 日志输出格式控制
logging:
# 设置日志输出格式
pattern:
console: "%d - %m %n"
%d
:日期
%m
:消息
%n
:换行
logging:
# 设置日志输出格式
pattern:
console: "%d %clr(%5p) --- [%16t] %clr(%-40.40c){cyan} : %m %n"
6. 设置日志文件
- 设置日志文件
logging:
file:
name: server.log
- 日志记录到文件中,超出设置的大小就会新建日志文件,
i
表示从 0 开始日志文件的顺序
logging:
logback:
rollingpolicy:
max-file-size: 3KB
file-name-pattern: server.%d{yyyy-MM-dd}.%i.log