前言
Log4j2
是 Log4j 的进化版本,并提供了许多 Logback 可用的改进,同时解决了 Logback 体系结构中的一些固有问题。而且日志处理中我们会用到kafka
作为日志管道。而kafka
客户端依赖与Logback
的兼容不是很完美,你可以选择排除依赖冲突或者使用Log4j2
。
排除Logback依赖
Spring Boot 2.x默认使用Logback日志框架,要使用 Log4j2必须先排除 Logback。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<!--排除logback-->
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
引入Log4j2依赖
<!--log4j2 依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
上面的 log4j2 已经适配了slf4j日志门面,所以我们的代码无需替换,只需要替换具体的日志框架以及对应的配置文件。
配置Log4j2##
创建log4j2.xml
文件,放在工程resources
目录里。这样就可以不加任何配置。如果你需要指定配置文件需要在Spring boot 配置文件application.yml
中指定 logging.config
属性。下面是一份比较详细的