好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Spring5新功能日志框架Log4j2整合示例

Spring5整合Log4j2日志框架

本次系列的学习是基于 spring5 ,也就是最新的版本。

spring5 的整个代码都是基于 java8 的,自身作了不少的优化,比如许多不建议使用的类和方法已经在代码库中删除。

此外,spring5 框架自带了通用的日志封装,但是我们依然可以整合其他的日志框架使用,比如 Log4j。不过在 spring5 中移除了 Log4jConfigListener,需要使用 Log4j2。

一、引入依赖

引入相关 jar 包。

二、创建Log4j2 配置文件

文件名是固定的 log4j2.xml 。

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<? xml version = "1.0" encoding = "UTF-8" ?>

<!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->

<!--Configuration后面的status用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,可以看到log4j2内部各种详细输出-->

< configuration status = "INFO" >

     <!--先定义所有的appender-->

     < appenders >

         <!--输出日志信息到控制台-->

         < console name = "Console" target = "SYSTEM_OUT" >

             <!--控制日志输出的格式-->

             < PatternLayout pattern = "%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />

         </ console >

     </ appenders >

     <!--然后定义logger,只有定义了logger并引入的appender,appender才会生效-->

     <!--root:用于指定项目的根日志,如果没有单独指定Logger,则会使用root作为默认的日志输出-->

     < loggers >

         < root level = "info" >

             < appender-ref ref = "Console" />

         </ root >

     </ loggers >

</ configuration >

现在就可以直接用起来了,执行一下之前的测试函代码:

?

1

2

2021-08-08 09:09:21.935 [main] INFO  com.alibaba.druid.pool.DruidDataSource - {dataSource-1} inited

Process finished with exit code 0

可以在控制台看到,日志信息是根据上面配置的格式进行输出的。

三、手动进行单独的输出

也可以手动的输出一些我们指定的内容日志。

?

1

2

3

4

5

6

7

8

9

10

package com.pingguo.spring5.test;

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

public class UserLog {

     private static final Logger log = LoggerFactory.getLogger(UserLog. class );

     public static void main(String[] args) {

         log.warn( "手动输出warning" );

         log.error( "手动输出error" );

     }

}

执行一下:

?

1

2

3

2021-08-08 09:18:02.285 [main] WARN  com.pingguo.spring5.test.UserLog - 手动输出warning

2021-08-08 09:18:02.288 [main] ERROR com.pingguo.spring5.test.UserLog - 手动输出error

Process finished with exit code 0

以上就是Spring5新功能日志框架Log4j2整合示例的详细内容,更多关于Spring5整合Log4j2日志框架的资料请关注其它相关文章!

原文链接:https://blog.csdn.net/wessonlan/article/details/124812990

查看更多关于Spring5新功能日志框架Log4j2整合示例的详细内容...

  阅读:22次