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); } } ```

相关推荐
双力臂4049 小时前
Spring Boot 单元测试进阶:JUnit5 + Mock测试与切片测试实战及覆盖率报告生成
java·spring boot·后端·单元测试
超浪的晨2 天前
Java 单元测试详解:从入门到实战,彻底掌握 JUnit 5 + Mockito + Spring Boot 测试技巧
java·开发语言·后端·学习·单元测试·个人开发
haonuy*2 天前
Log4j CVE-2021-44228 漏洞复现详细教程
log4j·教程·漏洞复现·cve-2021-44228
安卓开发者3 天前
Android 测试全指南:单元测试与UI测试框架详解
android·ui·单元测试
XF小冯4 天前
Log4j2漏洞vul-hub通关教程
log4j
人生在勤,不索何获-白大侠5 天前
day24——Java高级技术深度解析:单元测试、反射、注解与动态代理
java·开发语言·单元测试
飞鸟_Asuka8 天前
SpringBoot集成测试笔记:缩小测试范围、提高测试效率
java·单元测试·集成测试·springboot
一只特立独行的猫8 天前
单元测试学习+AI辅助单测
人工智能·学习·单元测试
ezreal_pan9 天前
巧用 Golang 函数特性实现单元测试中的数据库操作 Mock
开发语言·后端·golang·单元测试·函数