1. 在pom.xml添加依赖项:
org.springframework.boot
spring-boot-starter
org.springframework.boot
spring-boot-starter-logging
org.springframework.boot
spring-boot-starter-log4j2
此处注意:2.2.2.RELEASE 此处不用标明版本号,不然可能会和
org.springframework.boot
spring-boot-starter-parent
1.5.9.RELEASE
这里的springboot版本号不兼容,导致类似于找不到LogFactory的错误
2. 如果有其他引用的jar包内部会引用log4j相关的包,要手动排除,例如zookeeper包里:
org.apache.zookeeper
zookeeper
3.4.9
org.slf4j
slf4j-log4j12
不然会报以下警告并导致log无法生效
3. 在resources资源文件夹地下,创建log4j2-spring.xml配置文件,内容如下:
%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${hostName} --- [%15.15t] %-40.40c{1.} : %m%n%ex
D:/log/
filePattern="${LOG_FILE_PATH}/log4j2test-%d{yyyy-MM-dd}-%i.log">
${LOG_PATTERN}
4. 在类中添加以下属性声明即可
private static Log logger = LogFactory.getLog(Application.class);
5. 或者添加lombok引用
com.lmax
disruptor
3.3.6
org.projectlombok
lombok
从File—>Settings—>Plugins中安装lombok插件
就可以在类中使用@Log4j2注解,然后直接在代码中使用 log.info("log info"),而不用通过LogFactory获取日志实例