springboot 简单配置日志
程序员文章站
2022-03-14 10:13:48
...
springboot 配置日志
一、简单认识
spring自带日志配置,启动项目的那一套配置就是日志,只是打印在了控制台。如下:
二、简单使用
1.导包
Spring Boot项目一般都会引用spring-boot-starter或者spring-boot-starter-web,已经包含了日志包,所以不需要写版本。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</dependency>
2.使用
获取Logger,然后使用。
private static final Logger logger = LoggerFactory.getLogger(TestLoggerController.class);
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/log")
public class TestLoggerController {
private static final Logger logger = LoggerFactory.getLogger(TestLoggerController.class);
@PostMapping("test")
public String test() {
//log4j的日志优先级,从高到低依次为:ERROR、WARN、INFO、DEBUG、TRACE。
logger.error("==========error");
logger.warn("==========warn");
logger.info("==========info"); //默认的日志级别
logger.debug("==========debug");
logger.trace("==========trace");
return logger.getName();
}
}
三、定义日志输出的位置和名字
配置文件,这里以application.properties举例
logging.path=E:/network project/spring-boot-demo #日志输出位置 logging.file=spring-boot-demo.log #日志输出的文件名 ,若不配置,默认为spring.log
会自动生成文件,并且输出的日志 的日志和控制台一样。
四、配置日志级别
默认日志级别为:info
log4j的日志优先级,从高到低依次为:ERROR、WARN、INFO、DEBUG、TRACE。
logging.level.root=WARN logging.level.org.springframework.web=DEBUG logging.level.org.hibernate=ERROR logging.level.com.test.core.mapper=debug 意思是:就是org.springframework.web是DEBUG级别, org.hibernate是ERROR级别, 项目中com.test.core.mapper是debug级别 其它项目的日志输出级别为WARN。
五、其他配置
#自定义日志的格式
# 在控制台输出的日志的格式
logging.pattern.console=%d{yyyy/MM/dd-HH:mm:ss} [%thread] %-5level %logger- %msg%n
# 指定文件中日志输出的格式
logging.pattern.file=%d{yyyy-MM-dd} === [%thread] === %-5level === %logger{50} ==== %msg%n
#%d{HH:mm:ss.SSS}——日志输出时间
#%thread——输出日志的进程名字,这在Web应用以及异步任务处理中很有用
#%-5level——日志级别,并且使用5个字符靠左对齐
#%logger- ——日志输出者的名字
#%msg——日志消息
#%n——平台的换行符
配置参考官网:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-custom-log-levels