• 调试代码
  • 运营期间记录信息
    • 峰值流量,平均响应时长
    • 报错信息
    • 记录运维数据,扩容、宕机、报警

日志级别

  1. TRAC:运行堆栈信息
  2. DEBUG:程序员调试代码使用
  3. INFO:记录运维过程数据
  4. WARN:记录运维过程报警数据
  5. ERROR:记录错误堆栈信息
  6. FATAL:灾难信息(已与ERROR合并)

基础使用

引入lombok依赖

  1. 创建记录日志的对象

private static final Logger log = LoggerFactory.getLogger(当前类.class);

也可以使用类注解@Slf4j

  1. 使用
log.debug();
log.info();
log.warn();
log.error();

默认启动后运行在info级,即info以下的日志会被打印在控制台中

若想使用debug级则需要在配置文件中设置debug: true或在临时属性中设置-- debug=true,该设置为输出调试信息,常用于查看系统运行状况。

  1. 手动指定显示的log级别可以在配置文件中使用
logging:
	level:
		root: warn
		# 手动指定某个包的日志级别
		com.xxx.xxx: debug
		# 选取某个组设置级别
		groupName: warn
		
	# 设置分组,对某个组设置日志级别
	group: 
		groupName: com.xxx.xxx,com.yyy.yyy
		

日志格式

基础格式

image-20230112174805070

  • PID:进程ID,用于表明当前操作所处的进程,当多服务同时记录日志时,该值可用于协助识别程序
  • 所属类/接口名:显示的信息为SpringBoot重写后的信息,名称过长时,简化包名书写为首字母

自定义格式

在配置文件中

loggging:
	pattern:
		console: "%d - %m%n"
  • %d:日期
  • %p:日志级别
  • %clr():彩色
  • %m:消息
  • %n:换行
  • %16t:16位长度的俗所属线程
  • %-40.40c:40位长的所属类/接口名,左对齐,自动截断
  • %

运行效果:

image-20230112182225105

将log保存至文件中

在配置文件中:

logging:
	file:
		name: server.log

这样就可以将log以文件的形式保存在jar所在目录下,文件名为server.log

根据大小自动分割文件并设置命名格式

logging:
  file:
    name: server.log
  logback:
    rollingpolicy:
      # 设置log文件的最大大小,超过1MB自动存储为新文件
      max-file-size: 1MB
      # 设置log文件命名规则:server.日期.序号.log
      file-name-pattern: server.%d{yyyy-MM-dd}.%i.log