基础知识
日志级别
日志级别从低到高:TRACE < DEBUG < INFO < WARN < ERROR < FATAL
如果设置为 WARN ,则低于 WARN 的信息都不会输出。Spring Boot中默认配置ERROR、WARN和INFO级别的日志输出到控制台。
设置输出DEBUG方式
java -jar springTest.jar –debug
在application.properties中配置debug=true,该属性置为true的时候,核心Logger(包含嵌入式容器、hibernate、spring)
会输出更多内容,但是你自己应用的日志并不会输出为DEBUG级别。
级别设置
logging.level:日志级别控制前缀,*为包名或Logger名,LEVEL:选项TRACE, DEBUG, INFO, WARN, ERROR, FATAL, OFF
1 | logging.level.com.fintend=DEBUG:com.fintend包下所有class以DEBUG级别输出 |
自定义配置
根据不同的日志系统,你可以按如下规则组织配置文件名,就能被正确加载
- Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy
- Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml
- Log4j2:log4j2-spring.xml, log4j2.xml
- JDK (Java Util Logging):logging.properties
logback-spring
Spring Boot官方推荐优先使用带有-spring的文件名作为你的日志配置(如使用logback-spring.xml,而不是logback.xml),
命名为logback-spring.xml的日志配置文件,spring boot可以为它添加一些spring boot特有的配置项(下面会提到)。默认的
命名规则,并且放在 src/main/resources 下面即可
log4j2-spring.xml
1 | "1.0" encoding="UTF-8" xml version= |
输出日志格式
1 | 18:15:22.148 logback-demo [http-nio-9010-exec-1] INFO c.e.demo.controller.UserContorller - 日志输出 info |
属性说明
root节点是必选节点,用来指定最基础的日志输出级别,只有一个level属性。
level:用来设置打印级别,大小写无关:TRACE, DEBUG, INFO, WARN, ERROR, ALL 和 OFF,不能设置为INHERITED或者同义词NULL。默认是DEBUG。
可以包含零个或多个元素,标识这个appender将会添加到这个loger。
1 | <root level="debug"> |
自定义配置文件名
1 | logging.config=classpath:logging-config.xml |