日志概要
日志的框架基本分为 日志的抽象层 和 日志的实现层。
主要的日志抽象层
- JCL(Jakarta Commons Logging)
- jboss-logging
- SLF4j(Simple Logging Facade for Java)
主要的日志实现层-----配置文件
- Log4j--------------------------------Log4j.properties
- JUL(java.util.logging)-----------logging.properties
- Log4j2------------------------------log4j2-spring.xml or log4j2.xml
- Logback----------------------------logback-spring.xml ,logback-spring.groovy,logback.xml or logback.groovy
→logback.xml直接被日志框架识别 ,logback-spring.xml日志框架就不直接加载日志配置项,由SpringBoot加载,我们可以在里面写自己的配置
例如
<springProfile name="dev">
<!-- 可以指定某段配置只在某个环境下生效 -->
</springProfile>
<springProfile name!="dev">
<!-- 可以指定某段配置只在某个环境下生效 -->
</springProfile>
Hibernate选用的 jboss-logging
Spring Boot:底层是Spring框架,Spring默认框架是JCL;
SpringBoot选用 SLF4J 和 logback
每个日志框架的实现框架都有自己的配置文件。使用slf4j以后,配置文件还是做成日志实现框架本身的配置文件;
SLF4J使用
配置设定
由于SpringBoot2 默认支持SLF4J,因此,我们不用添加任何依赖
可以直接通过配置 application.yml / application.properties 指定出力level
#Log level
logging.level.root=INFO
logging.level.org.springframework.web=INFO
也可以自己生成配置文件·,更加灵活控制输入。
例
<?xml version="1.0"?>
<configuration>
<!-- #Formate
#%d:Date #%thread:Thread No #%-5level:Left number level
#%logger{50}:char number #%msg:message #%n: -->
<property name="LOG_PATTERN" value=