springboot 关于log4j日志配置

蓝咒 提交于 2020-05-08 07:32:12

 

自动加载配置文件:
(1)如果采用log4j输出日志,要对log4j加载配置文件的过程有所了解。log4j启动时,默认会寻找source folder下的log4j.xml配置文件,若没有,会寻找log4j.properties文件。然后加载配置。配置文件放置位置正确,不用在程序中手动加载log4j配置文件。如果将配置文件放到了config文件夹下,在build Path中设置下就好了。

log4j日志配置文件的命名一般采用log4j.properties,位置放在resources/log4j.properties 下面,而不能直接把配置写在applicaion.properties里面,切记!!

 

 


若要手动加载配置文件如下:
(1)PropertyConfigurator.configure("log4j.properties") 默认读取的是项目根目录的路径。此时的log4j.properties要放在项目目录下。
如图,log4j.properties和src是同级目录,同在根目录下

(2)一般,一个java项目会有很多的配置文件,建议把所有的配置文件放到一个文件夹下,
例如,放到config文件夹。那么在读取这些配置文件的时候要加上子目录名称。
如图在项目目录下创建config文件夹(注意:不是在src文件下),此时,config和src是同级目录(同级目录!!!!!!)

 


这时,读取路径改为:
PropertyConfigurator.configure("config/log4j.properties");
(3):如果不手动设置,不用人为的写加载log.properties文件的代码时,直接放src目录下,千万要记得,如果新建一个JAVA项目,src文件要弄成原文件包才行
我就是用的这个
(4)项目打成jar包时,一般不会把配置文件也打进jar包。
如果是第一种方式,直接将log4j.properties文件和生成的HelloWorld.jar放在同一目录下,项目就能顺利读取配置文件。
如果是第二种方式,要建立config文件夹,把配置文件放入其中,再将config文件和生成的HelloWorld.jar放在同一目录下,项目就能顺利读取配置文件。

 

(5)依赖包配置

在创建Spring Boot工程时,我们引入了spring-boot-starter,其中包含了spring-boot-starter-logging,该依赖内容就是Spring Boot默认的日志框架Logback,所以我们在引入log4j之前,需要先排除该包的依赖,再引入log4j的依赖

https://blog.csdn.net/l1028386804/article/details/80464909

 

<!-- 忽略自带的日志框架. -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency> 
<!-- log4j. -->
<dependency> 
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j</artifactId>
</dependency>

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!