【SpringBoot】-之日志配置
前言
SpringBoot默认配置好了日志,只要启动SpringBoot项目就会在控制台输出日志信息,那么SpringBoot采用了什么日志呢?它采用了slf4j+logback的组合形式,SpringBoot也提供对JUL、log4j2、Logback提供了默认配置.
日志级别
从低到高:
- trace:跟踪,级别最低的日志
- debug:调试,用来查看调试内容
- info:信息,一般记录一些方法执行等
- warn:警告,可能发生错误的代码
- error:错误,一般在catch里面执行
Trace<debug<info<warn<error
修改日志默认配置
Applicati.properties中修改日志默认配置
SpringBoot默认设定的是info级别日志(日志默认级别也称为root级别),怎么把info级别的日志改成其他级别呢?
#调整指定包的级别
logging.level.com.meng=debug
#这是修改springboot的root级别
logging.level.root=debug
设定某个级别后,就只打印设定的这个级别及后面高级别的日志信息,没有指定就用默认的root级别
修改日志文件的生成路径
解释表格:
- 在配置文件中logging.file(指定文件)和logging.path(指定目录)什么也不写默认在控制台输出日志
- **logging.file=springboot.log(指定文件)**是表格中的第二种
- **使用logging,path(指定目录),**输入到项目所在磁盘根路径下
- 两个同时指定,采用的是指定文件,也就是表格中的第二种
Applicati.properties中修改日志默认配置
使用logging.file实列:在application.properties文件中写入代码:
logging.file=springboot.log(指定文件)
运行测试代码之后会自动在当前项目生成springboot.log文件,(也可以生成在指定硬盘下,logging.file=D:/springboot.log)
再次运行,日志文件不会覆盖,只会追加
使用logging,path(指定目录)
logging.path=/springboot/log
会在当前项所在项目的根路径下生成日志文件
修改日志输出格式
日志输出格式说明:
%d: 输出日期时间
%thread:输出当前线程名
%-5level:输出日志级别,左对齐5个字符宽度
%logger{50} 输出全类名长50个字符
%msg 日志信息
%n换行符
# 修改控制台输出的日志格式 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
示例:
切换日志框架
将springBoot默认的logback切换为log4j2日志框架
在项目的ppm.xml切换log4j2
首先删掉日志启动器依赖,在使用log4j2依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
先删掉 spring-boot-starter-logging 日志启动器
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
再使用 log4j2 日志启动器
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
上一篇: React 入门 -- 配置 + 组件
下一篇: DDR III插槽信号定义图