73.2 配置Log4j

如果Log4j 2出现在classpath下,Spring Boot会将其作为日志配置。如果你正在使用starters进行依赖装配,这意味着你需要排除Logback,然后包含log4j 2。如果不使用starters,除了添加Log4j 2,你还需要提供jcl-over-slf4j依赖(至少)。

最简单的方式可能就是通过starters,尽管它需要排除一些依赖,比如,在Maven中:

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>org.springframework.boot</groupId>
  7. <artifactId>spring-boot-starter</artifactId>
  8. <exclusions>
  9. <exclusion>
  10. <groupId>org.springframework.boot</groupId>
  11. <artifactId>spring-boot-starter-logging</artifactId>
  12. </exclusion>
  13. </exclusions>
  14. </dependency>
  15. <dependency>
  16. <groupId>org.springframework.boot</groupId>
  17. <artifactId>spring-boot-starter-log4j2</artifactId>
  18. </dependency>

Log4j starters会收集好依赖以满足普通日志记录的需求(比如,Tomcat中使用java.util.logging,但使用Log4j 2作为输出),具体查看Actuator Log4j 2的示例,了解如何将它用于实战。