一、入门介绍
log4j
apache实现的一个开源的日志组件
slf4j
日志接口即为所有日志框架制定的一种规范的标准接口,并不是一个框架的具体实现,需要配合具体的日志框架使用(如log4j2、logback)
logback
由log4j作者设计的基于slf4j实现的用于取代log4j的一个新的日志框架
而我们即将介绍的log4j2则是基于logback和log4j1.x的改进版,采用了无锁异步等技术使日志的吞吐量和性能较log4j 1.x提升将近10倍,并且在配置方面更为灵活。
二、使用示例
1、引入maven依赖
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.weidai.work.zm</groupId> <artifactId>log4j2-learn</artifactId> <version>1.0-SNAPSHOT</version> <properties> <junit.version>3.8.1</junit.version> <log4j.version>2.5</log4j.version> </properties> <!-- 使用aliyun镜像 --> <repositories> <repository> <id>aliyun</id> <name>aliyun</name> <url>http://maven.aliyun.com/nexus/content/groups/public</url> </repository> </repositories> <dependencies> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>${log4j.version}</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>${log4j.version}</version> </dependency> </dependencies> </project>
2、测试代码
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; /** * @author : zhangyanqing * @time : 2017/12/9 * @desc : log4j2测试 */ public class LoggerTest { public static final Logger LOGGER = LogManager.getLogger(LoggerTest.class); public static void main(String[] args){ LOGGER.trace("trace level"); LOGGER.debug("debug level"); LOGGER.info("info level"); LOGGER.warn("warn level"); LOGGER.error("error level"); LOGGER.fatal("fatal level"); } }
执行结果截图
对执行结果进行分析可知在没有配置文件的情况下log4j2默认的日志输出级别为error只输出error和fatal级别的日志
浙公网安备 33010602011771号