SpringBoot默认日志的使用方法及常用配置

SpringBoot默认采用slf4j+logback 的组合形式,但也提供对JUL、log4j2、Logback提供了默认配置。

我们使用IDEA的spring初始化创建一个springboot项目后,运行一下开始方法。控制台输出的一堆如下的信息其实就是日志

SpringBoot默认日志的使用方法及常用配置

在配置文件中配置日志

1.配置日志输出级别

打开测试方法,输入以下代码。

@SpringBootTest
class SpringBoot03LoggingApplicationTests {
    Logger logger= LoggerFactory.getLogger(getClass());
    @Test
    void contextLoads() {
        //下面的日志级别从低到高。
        //默认输出info级别以上的日志信息,可以在配置文件中修改
        //追踪运行信息
        logger.trace("这是trace日志信息");
        //调试信息
        logger.debug("这是debug日志信息");
        //自定义信息
        logger.info("这是info日志信息");
        //警告信息
        logger.warn("这是warn日志信息");
        //错误信息
        logger.error("这是error日志信息");
    }

}

仔细观察你的控制台,发现只有info级别以上的日志,trace和debug没有显示。这个可以在配置文件中进行设置。

#修改指定包的日志输出级别为debug以上
logging.level.top.yelow=debug
#修改整个的默认级别
#logging.level.root=debug

第一个level之后是指定的包,在这个包里面的日志会输出debug级别以上的。

而第二个.root是整个项目的默认级别。不建议修改,因为级别低的日志非常多。

2.输出日志到文件

#输出日志到项目根目录下的springboot.log文件中
logging.file.name=springboot.log
#输出日志到项目所在磁盘的/springboot/log文件夹中的spring.log文件中
#logging.file.path=/springboot/log

当两种方式都存在时,采用的是file方法,所以推荐file方法,file方法也可以指定目录,只要在前面写上完整的磁盘和路径

3.修改日志输出格式

#修改控制台日志输出的格式,以下方法无法修改日志文件的输出格式
logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n
#修改日志文件中日志的输出格式
logging.pattern.file=%d{yyyy-MM-dd HH:mm:ss.SSS} >>> [%thread] >>> %-5level >>> %logger{50} >>> %msg%n


 日志输出格式说明:
 %d 输出日期时间,
 %thread 输出当前线程名,
 %-5level 输出日志级别,左对齐5个字符宽度
 %logger{50} 输出全类名最长50个字符,超过按照句点分割
 %msg 日志信息
 %n 换行符

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/71e3f386649307fced68a46dcdb34820.html