spring6启用Log4j2日志

pom文件

java 复制代码
<!--log4j2的依赖-->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.23.1</version>
</dependency>
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j2-impl</artifactId>
    <version>2.23.1</version>
</dependency>

log4j2.xml

java 复制代码
<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <loggers>
        <root level="DEBUG">
            <appender-ref ref="spring6log"/>
        </root>
    </loggers>
    <appenders>
        <console name="spring6log" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss SSS} [%t] %-3level %logger-{1024} - %msg%n"/>
        </console>
    </appenders>
</configuration>

pattern定义日志输出格式:

配置 说明

%d{HH:mm:ss.SSS} 输出日志打印的时间,精确到毫秒

%t\] 输出当前线程名称 %-5level 输出日志级别,-5表示左对齐并且固定输出5个字符,不足在右边补空格 %logger{36} 输出logger名称,一般是类的全限定路径名 %msg 输出要打印的业务日志信息 %n 日志换行 实际会输出如下日志: ```java 11:33:08.438 [main] ERROR org.apache.logging.log4j.Log4j2Test - error level log ``` Log4j2共有8种日志级别, 按照优先级从小到大排序: ```java ALL < TRACE < DEBUG < INFO < WARN < ERROR < FATAL < OFF ``` ```java logs logs/%d{yyyy-MM-dd} logs/error %d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n 15d 100MB ``` 测试代码 ```java package org.apache.logging.log4j; public class Log4j2Test { private static Logger LOG = LogManager.getLogger(Log4j2Test.class); public static void main(String[] args) throws Exception { // 一直打印日志,用于测试Log4j2功能 while (true) { logAll(); } } // 打印各种级别的日志用于测试 public static void logAll() throws Exception { LOG.trace("trace level log"); LOG.debug("debug level log"); LOG.info("info level log"); LOG.error("error level log"); LOG.fatal("fatal level log"); // 设置休眠时间(单位ms),控制日志打印速度 Thread.sleep(3); } } ```

相关推荐
刘一说18 小时前
深入理解 Spring Boot 单元测试:从基础到最佳实践
spring boot·后端·单元测试
草梅友仁19 小时前
代码重构与测试覆盖率提升实践 | 2025 年第 46 周草梅周报
单元测试·开源·github
泛联新安1 天前
iUnit7.0重磅发布|AI驱动更智能的单元测试
人工智能·单元测试
安冬的码畜日常2 天前
【JUnit实战3_32】第二十章:用 JUnit 5 进行测试驱动开发(TDD)(上)——将非 TDD 项目改造为 TDD 项目
单元测试·测试驱动开发·tdd·junit5·test-driven
安冬的码畜日常2 天前
【JUnit实战3_33】第二十章:用 JUnit 5 进行测试驱动开发(TDD)(下)——TDD 项目的重构过程及新功能的开发实战
测试工具·junit·单元测试·测试驱动开发·tdd·junit5·test-driven
测试老哥3 天前
软件测试之单元测试知识总结
自动化测试·软件测试·python·测试工具·职场和发展·单元测试·测试用例
m0_565611133 天前
Java高级特性:单元测试、反射、注解、动态代理
java·单元测试·log4j
稻香味秋天3 天前
单元测试指南
数据库·sqlserver·单元测试
LSL666_3 天前
Spring 框架整合 JUnit 单元测试——包含完整执行流程
spring·junit·log4j
郝开3 天前
Spring Boot 2.7.18(最终 2.x 系列版本)8 - 日志:Log4j2 基本概念;Log4j2 多环境日志配置策略
spring boot·单元测试·log4j