SpringBoot 2.x整合Log4j2 以及常见使用方式详解
2023-12-31 12:30:51
SpringBoot作为一款优秀的Java框架,提供了便捷的开发体验和丰富的功能支持,在企业项目中得到了广泛的应用。为了满足不同的日志记录需求,SpringBoot提供了多种日志框架的支持,其中Log4j2因其强大的功能和灵活的配置而备受青睐。本文将详细介绍SpringBoot 2.x与Log4j2的整合步骤,以及Log4j2的常见使用方式,帮助读者快速掌握Log4j2在SpringBoot中的应用技巧。
SpringBoot整合Log4j2
1. 引入依赖
在SpringBoot项目中引入Log4j2的依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
2. 配置日志框架
在Spring Boot项目的配置文件(application.properties 或 application.yml)中配置日志框架为Log4j2:
logging.config=classpath:log4j2.xml
3. 创建Log4j2配置文件
在项目资源目录下创建log4j2.xml配置文件,并添加如下内容:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="CONSOLE" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
<File name="FILE" fileName="logs/app.log">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</File>
</Appenders>
<Loggers>
<Root level="INFO">
<AppenderRef ref="CONSOLE"/>
<AppenderRef ref="FILE"/>
</Root>
</Loggers>
</Configuration>
4. 使用日志记录
在项目代码中使用Log4j2记录日志:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Main {
private static final Logger logger = LoggerFactory.getLogger(Main.class);
public static void main(String[] args) {
logger.info("Hello, Log4j2!");
}
}
Log4j2常用配置
1. 日志级别
Log4j2支持多种日志级别,由低到高分别是TRACE、DEBUG、INFO、WARN、ERROR和FATAL。可以通过修改配置文件中的
2. 日志输出
Log4j2可以通过控制台和文件两种方式输出日志。在配置文件中通过
3. 日志文件
在配置文件中通过
4. 日志格式
Log4j2支持多种日志格式,可以通过修改
%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n
5. 日志轮转
Log4j2支持日志轮转功能,可以通过修改
TimeBasedTriggeringPolicy: 按照时间间隔轮转日志文件
SizeBasedTriggeringPolicy: 按照日志文件大小轮转日志文件
总结
本文详细介绍了SpringBoot 2.x与Log4j2的整合步骤,以及Log4j2的常见使用方式,帮助读者快速掌握Log4j2在SpringBoot中的应用技巧。希望本文能对读者有所帮助。