java 如何使用log4j
使用 Log4j 的步骤
添加依赖
在 Maven 项目中,需要在 pom.xml 文件中添加 Log4j 依赖:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.17.1</version>
</dependency>
配置文件
创建一个 log4j2.xml 文件并放置在 src/main/resources 目录下。以下是一个简单的配置示例:
<?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>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Console"/>
</Root>
</Loggers>
</Configuration>
代码中使用 Log4j
在 Java 类中导入 Log4j 相关类并创建 Logger 实例:

import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class MyClass {
private static final Logger logger = LogManager.getLogger(MyClass.class);
public void doSomething() {
logger.debug("Debug message");
logger.info("Info message");
logger.warn("Warning message");
logger.error("Error message");
}
}
日志级别
Log4j 支持以下日志级别(从低到高):
- TRACE
- DEBUG
- INFO
- WARN
- ERROR
- FATAL
在配置文件中设置 Root level 可以控制输出级别。例如,设置为 info 时,debug 和 trace 级别的日志不会输出。

文件输出
如果需要将日志输出到文件,可以在 log4j2.xml 中添加 FileAppender:
<Appenders>
<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="File"/>
</Root>
</Loggers>
异步日志
为了提高性能,可以启用异步日志。在 pom.xml 中添加依赖:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.17.1</version>
</dependency>
并在配置文件中添加异步配置:
<Configuration status="WARN">
<Appenders>
<Async name="Async">
<AppenderRef ref="Console"/>
</Async>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Async"/>
</Root>
</Loggers>
</Configuration>






