spring boot + log4j2
由于本人技术有限, 没有弄清楚为什么选择日志框架优先使用 log4j2, 我也一样是是通过其他博主的文章中的压力测试报告发现 log4j2 的异步输出方式远高于 spring boot 自带的 logback, 不过不管是 logback, 还是 log4j2 它们的作者都是同一人.
这里还提一下 slf4j, 它是一个经典的门面模式的框架 (如 jdbc), 就是一套接口定义, 不负责具体的实现. 所以一般组合就是 slf4j + 日志打印驱动框架了.
导入 spring boot + log4j2 依赖, spring-boot-starter-web
里面是有依赖 spring-boot-starter
的.
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-starter-log4j2
创建配置文件 log4j2.xml
<?xml version="1.0" encoding="UTF-8"?>
获取日志输入对象方式1:
private static Logger log = LoggerFactory.getLogger(XXX.class)
方式2, 需要导入 lombok
的依赖:
@Log4j2 //还可以使用@slf4j
public class XXX