springBoot 配置log4j2

日志概念

日志接口(slf4j)

slf4j是对所有日志框架制定的一种规范、标准、接口,并不是一个框架的具体的实现,因为接口并不能独立使用,需要和具体的日志框架实现配合使用(如log4j、logback)

日志实现(log4j、logback、log4j2)

  1. log4j是apache实现的一个开源日志组件
  2. logback同样是由log4j的作者设计完成的,拥有更好的特性,用来取代log4j的一个日志框架,是slf4j的原生实现
  3. log4j2是log4j 1.x和logback的改进版,据说采用了一些新技术(无锁异步、等等),使得日志的吞吐量、性能比log4j1.x提高10倍,并解决了一些死锁的bug,而且配置更加简单灵活。

springboot集成Log4j2

1,修改pom.xml文件

 <!-- 去除spring-boot默认日志依赖包 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <exclusions>
                <!-- 想要配置log4j2,就要先去除logging包 -->
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

        <!--添加 log4j2 的包-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>

2,添加log4j2.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!--日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
<!-- status log4j2内部日志级别 -->
<configuration status="INFO">
    <!-- 全局参数 -->
    <Properties>
        <Property name="pattern">%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %c{1}:%L -%m%n</Property>
        <Property name="displayName">EurekaServer</Property>
    </Properties>
    <Appenders>
        <Console name="console" target="SYSTEM_OUT" follow="true">
            <PatternLayout>
                <pattern>${pattern}</pattern>
            </PatternLayout>
        </Console>
        <!-- 文件 每次运行程序会自动清空,由append属性决定 -->
        <File name="error" fileName="${displayName}_error.log" append="false">
            <!-- 指定error 级别的日志 -->
            <ThresholdFilter level="ERROR" onMatch="ACCEPT"
                             onMismatch="DENY" />
            <PatternLayout>
                <pattern>${pattern}</pattern>
            </PatternLayout>
        </File>
        <!-- 滚动文件 -->
        <RollingFile name="rollingFile" fileName="${displayName}.log"
                     filePattern="${displayName}_%d{yyyy-MM-dd}.log">
            <PatternLayout>
                <pattern>${pattern}</pattern>
            </PatternLayout>
            <!-- 按大小划分 -->
            <SizeBasedTriggeringPolicy size="50 MB" />
        </RollingFile>
    </Appenders>
    <Loggers>
        <!-- <Logger name="org.apache.catalina.util.LifecycleBase" level="ERROR"
            /> <Logger name="org.apache.coyote.http11.Http11NioProtocol" level="WARN"
            /> <Logger name="org.apache.tomcat.util.net.NioSelectorPool" level="WARN"
            /> -->
        <Logger name="org.springframework" level="WARN" />
        <Logger name="com.xuweihao" level="DEBUG" />
        <Root level="DEBUG">
            <AppenderRef ref="console"></AppenderRef>
            <AppenderRef ref="error"></AppenderRef>
            <AppenderRef ref="rollingFile"></AppenderRef>
        </Root>
    </Loggers>
</configuration>

3,在类中使用日志
在这里插入图片描述
参考博客转载

https://blog.csdn.net/fujaja/article/details/81530284

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值