上一篇:SpringBoot3-笔记-日志原理(1)
下一篇:SpringBoot3-日志(3)-日志级别与日志分组

1.默认的日志格式

启动主程序就能在控制台看到:
​​​​在这里插入图片描述

默认格式如下:

2025-08-27T14:28:10.473+08:00  INFO 24996 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]

从左向右依次是:

  • 时间和日期

  • 日志级别:ERROR, WARN, INFO, DEBUG, TRACE

  • 进程 ID

    • 打开cmd,输入jps可以列举出所有运行中的java进程,24996就是该java项目的进程ID。
      在这里插入图片描述
  • —:消息分隔符(三个-)

    • 该项目运行的是主程序(在main线程中运行),所以 [] 中是 main。
  • 线程名:使用[]包含

  • Logger 名:通常是产生日志的 类名

    • 是由哪个类产生的这个日志,如 o.apache.catalina.core.StandardService
  • 消息:日志记录的内容

注意:logback 没有 FATAL 级别,对应的是 ERROR

2.日志格式更改

控制台上的日志

  1. 打开项目中的application.propertise,在其中加入logging.partter.*等命令,其中
  • logging.pattern.console表示在控制台打印的日志格式
  • logging.pattern.file表示在文件中打印的日志格式
  • 示例:其中
    • %-5level表示日志级别级别,其中-5表示左对齐5个字符。
    • %logger表示类
    • %msg表示日志消息,%n表示换行
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{15} ===> %msg%n

在这里插入图片描述
2. 在application.propertise加入以上内容后再运行,可以看到控制台输出的日志格式发生了变化:
在这里插入图片描述
日志格式的默认设置在包spring-boot:3.0.5中的这个json中,默认格式很长,如下:

%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd'T'HH:mm:ss.SSSXXX}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}

在这里插入图片描述
3. 可以根据默认格式中的参数,比如LOG_DATEFORMAT_PATTERN,在application.propertise中仅针对某些内容格式进行修改。
在这里插入图片描述

业务中写日志

  1. 新建一个controller
package com.atwyb.logging.com.atwyb.logging.controller;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
    Logger logger = LoggerFactory.getLogger(getClass());

    @GetMapping("/h")
    public String hello(){
       logger.info("loginfo:hello");
       return "hello";
    }
}
  1. 启动后,浏览器访问http://localhost:8080/h后,查看控制台日志,就能看到在业务中自己设置的日志了(按以上代码,每次访问/h都会产生一个这样的日志):
    在这里插入图片描述

上一篇:SpringBoot3-笔记-日志原理(1)
下一篇:SpringBoot3-日志(3)-日志级别与日志分组

​参考:尚硅谷SpringBoot3零基础教程,面试&加薪必会springboot(含响应式编程)_哔哩哔哩_bilibili

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐