使用日志时,选用日志抽象层slf4j,实现选用logback。
开发使用日志记录方法的调用,不应该直接调用日志的实现类,而是调用日志抽象层里的方法
import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class HelloWorld { public static void main(String[] args) { Logger logger = LoggerFactory.getLogger(HelloWorld.class); logger.info("Hello World"); } }SpringBoot使用这个依赖导入日志功能,包含关系是spring-boot-starter-web导入spring-boot-starter导入spring-boot-starter-logging,我们在使用的时候只需要导入第一个依赖即可。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> <version>2.3.0.RELEASE</version> <scope>compile</scope> </dependency>springboot日志实现,
如果要引入其他框架,一定要把当前框架的默认日志依赖移除掉,例如:Spring框架使用的commons-logging。
SpringBoot已经默认记录日志了
导包语句,可能导错成commons.logging import org.slf4j.Logger; import org.slf4j.LoggerFactory; //传入本类,获取记录器 Logger logger = LoggerFactory.getLogger(getClass()); @Test void contextLoads(){ //日志级别:trace<debug<info<warn<error //可以调整日志级别,只输出高级别日志 logger.trace("跟踪日志"); logger.debug("debug日志"); logger.info("info log"); logger.warn("warn log"); logger.error("error log"); }日志级别:trace<debug<info<warn<error,可以调整日志级别,只输出高级别日志,SpringBoot默认级别是info级别: 在主配置文件中加入信息,就可以答应所有级别的日志
logging.level.org.myself = trace配置文件中的logger设置
#设定日志等级默认info logging.level.org.myself = trace #指定文件名 #logging.file.name = SpringBootLog.log #指定路径 logging.file.path=./log #控制台输出日志格式 logging.pattern.console=%d{yyyy-MM-dd} [%thread] %-5level %logger{50} - %msg%n #文件日志格式 logging.pattern.file=%d{yyyy-MM-dd} --- [%thread] --- %-5level --- %logger{50} - %msg%n日志输出格式