springboot整合lo4j2
程序员文章站
2022-05-25 11:53:38
...
根据springboot版本的不同,需要引入的log4j框架也不同
Java Log4j和Log4j2的区别
https://blog.csdn.net/loophome/article/details/94033039
log4j:通过一个log4j.properties的文件作为主配置文件
log4j2:只能采用.xml,.json来做,比如log4j2.xml
楼主springboot是2.1.7版本,所以这里配置log4j2(log4j同理,只是引入的依赖和配置文件不一样)
1.引入依赖,在spring-boot-starter-web下去除自带的logging,再引入log4j2的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 排除默认的logback日志,使用log4j-->
<exclusions><!-- 去掉默认配置 -->
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<!--引入log4j2-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
2.在src/resource下创建log4j2.xml配置文件(springboot会自动配置)
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="DEBUG">
<Appenders>
<!--添加一个控制台追加器-->
<Console name="Console" target="SYSTEM_OUT" follow="true">
<PatternLayout>
<pattern>[%-5p] %d %c - %m%n</pattern>
</PatternLayout>
</Console>
<!--添加一个文本追加器,文件位于根目录下,名为log.log,可以自主修改-->
<File name="File" fileName="logs/log.log">
<PatternLayout>
<pattern>[%-5p] %d %c - %m%n</pattern>
</PatternLayout>
</File>
</Appenders>
<Loggers>
<Root level="DEBUG">
<AppenderRef ref="Console" />
</Root>
<!--把org.springframework包下的所有日志输出到log文件-->
<Logger name="org.springframework" level="DEBUG" additivity="true">
<AppenderRef ref="File" />
</Logger>
</Loggers>
</Configuration>
配置成功
附项目链接参考:
springboot整合mybatis、log4j2框架
https://github.com/guazixiong/frameworks