springboot集成log4j2输出日志文件
时间: 2023-07-01 08:20:48 浏览: 100
好的,下面是Spring Boot集成log4j2输出日志文件的步骤:
1. 在pom.xml文件中添加log4j2的依赖
```
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
```
2. 在src/main/resources目录下创建log4j2.xml文件,并配置输出文件的路径、格式等信息。以下是一个示例配置文件:
```
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
<RollingFile name="RollingFile" fileName="logs/log4j2.log"
filePattern="logs/log4j2-%d{yyyy-MM-dd}-%i.log">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="10MB"/>
</Policies>
<DefaultRolloverStrategy max="10"/>
</RollingFile>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
```
3. 在Spring Boot的启动类中添加注解@EnableAsync和@ImportResource,开启异步调用和导入log4j2.xml配置文件。
```
@SpringBootApplication
@EnableAsync
@ImportResource(locations = {"classpath:log4j2.xml"})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
```
4. 在需要输出日志的类中,使用log4j2的日志记录器进行日志输出。以下是一个示例:
```
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class SampleClass {
private static final Logger logger = LogManager.getLogger(SampleClass.class);
public void doSomething() {
logger.info("This is a sample log message.");
}
}
```
这样就完成了Spring Boot集成log4j2输出日志文件的配置。希望对你有帮助!