springboot中使用log4j

1、创建springboot项目

  1. 当前springboot选择的是2.6.13版本,jdk1.8
  2. 尽量选2.几的springboot

2、在pom.xml中导入相应的坐标

java 复制代码
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.4.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.4.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-web</artifactId>
            <version>2.4.1</version>
        </dependency>

3、在resources中添加log4j2.xml,并添加内容

java 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">   <!--设置log4j2自身运行的日志显示级别-->
    <Properties>
        <Property name="PR">你自己定义的日志文件位置</Property>
    </Properties>
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT">  			 <!--输出到控制台-->
            <PatternLayout pattern="%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n"/>
        </Console>
        <RollingFile name="RollingFile" fileName="${PR}/i18ntools.log"
                     filePattern="${PR}/文件名-%i.all.log.gz">   <!--输出到日志文件-->
            <PatternLayout pattern="%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] - %m%n"/>
            <!-- 日志文件大小 -->
            <SizeBasedTriggeringPolicy size="100MB"/>
            <!-- 最多保留文件数 -->
            <DefaultRolloverStrategy max="200"/>
        </RollingFile>
    </Appenders>
    <Loggers>     								<!--指定所使用的日志记录器以及显示级别-->
        <Root level="info">						<!--显示级别-->
            <AppenderRef ref="RollingFile"/>
            <AppenderRef ref="Console"/>
        </Root>
    </Loggers>
</Configuration>

4、在需要使用类上添加

java 复制代码
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;

5、在需要使用类上添加

java 复制代码
private static Logger logger= LogManager.getLogger(LogManager.ROOT_LOGGER_NAME);

6、输出日志

java 复制代码
	//info级别
	logger.info("这是个info级别的日志");

	//debug级别
	logger.debug("这是个debug级别的日志");

	//warn级别
	logger.warn("这是个warn级别的日志");

	//error级别
	logger.error("这是个error级别的日志");
相关推荐
xieliyu.1 小时前
【JavaEE进阶】Spring Boot 日志:从 System.out 到 @Slf4j,6 个级别 + 4 类配置一篇讲透
java·spring boot·spring·java-ee·springboot·logback·slf4j
Mr-Wanter3 小时前
Spring Boot 接口签名实践
java·spring boot
余槐i4 小时前
开虚拟线程后接口反而更慢:JDK 21 synchronized 锁住载体线程的排查
java·spring boot·redis·mysql·性能优化
RuoyiOffice4 小时前
Flowable 状态通知设计:单体用本地事件,微服务如何回写业务状态?
spring boot·微服务·vue3·flowable·ruoyi office·redis stream·流程状态通知
ly76895 小时前
Spring Security 过滤器链定制:认证、CORS 与 CSRF 的先后顺序
java·spring boot·spring·spring security·csrf·cors·过滤器链
9527!到!1 天前
Springboot @value读取配置参数踩坑&推荐解决方案
java·spring boot·spring
十年Java程序媛1 天前
Java 面试常问 this、super:构造方法调用顺序避坑
java·开发语言·spring boot·面试·个人开发
汤姆宝库1 天前
推理时计算深拆:思维链、验证搜索与测试时Scaling
log4j
小蒜学长1 天前
基于SpingBoot+Vue的定向越野赛事管理系统的设计与开发(代码+数据库+LW)
java·前端·spring boot·后端·前后端分离·定向越野赛事
RuoyiOffice1 天前
项目预算和交付日期变了,为什么不能直接改台账?
spring boot·项目管理·vue3·flowable·业务建模·ruoyi office·项目变更