一. 去掉logback框架
在SpringBoot项目中使用log4j2,首先要将原来的SpringBoot项目自带的logback日志框架去掉
二.编写log4j的配置文件
这个配置文件可以是 xml, 也可以是 .properties文件,我这里使用xml,配置文件如下
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<!-- 定义一个文件日志 appender -->
<File name="File" fileName="D:\CarProject\Vueproject\src\main\resources\myapp.log">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</File>
<!-- 定义一个控制台输出 appender -->
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d %highlight{%-5level}{ERROR=Bright RED, WARN=Bright Yellow, INFO=Bright Green, DEBUG=Bright Cyan, TRACE=Bright White} %style{[%t]}{bright,magenta} %style{%c{1.}.%M(%L)}{cyan}: %msg%n"/>
</Console>
</Appenders>
<Loggers>
<!-- 根 logger,定义日志级别和输出目标 -->
<Root level="info">
<AppenderRef ref="File"/> <!-- 输出到文件 -->
<AppenderRef ref="Console"/> <!-- 输出到控制台 -->
</Root>
</Loggers>
</Configuration>
我这里定义了一个myapp.log的文件,它会记录和保存控制台里面所有的日志
三.在配置文件里面加上这一条
logging:
config:
classpath: log4j2.xml
这是指明配置文件的地址
四.之后就是使用log4j日志了
package com.bq.system.Service;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class log4jTest {
static final Logger LOGGER= LogManager.getLogger(log4jTest.class);
public static void main(String[] args) {
LOGGER.info("你好");
LOGGER.debug("This is a debug message.");
LOGGER.info("This is an info message.");
LOGGER.warn("This is a warning message.");
LOGGER.error("This is an error message.");
LOGGER.fatal("This is a fatal error message.");
}
}
五.输出效果
六.生成的log记录