log4j2.xml配置

1、引入log4j2的依赖

    <!-- 使用log4j2 -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-log4j2</artifactId>
    </dependency>

2、log4j2的配置

    <RollingFile name="RollingFileWarn" fileName="log/warn.log"
                 filePattern="log/$${date:yyyy-MM}/warn-%d{yyyy-MM-dd}-%i.log" append="true">
        <Filters>
            <ThresholdFilter level="WARN" onMatch="ACCEPT" onMismatch="DENY"/>
            <ThresholdFilter level="ERROR" onMatch="DENY" onMismatch="NEUTRAL"/>
        </Filters>
        <PatternLayout pattern="%d{yyyy.MM.dd 'at' HH:mm:ss} %-5level %l  - %msg%xEx%n"/>
        <Policies>
            <TimeBasedTriggeringPolicy/>
            <SizeBasedTriggeringPolicy size="5MB"/>
        </Policies>
        <!-- DefaultRolloverStrategy属性如不设置,则默认为最多同一文件夹下7个文件,这里设置了24 -->
        <DefaultRolloverStrategy max="24"/>
    </RollingFile>

    <RollingFile name="RollingFileError" fileName="log/error.log"
                 filePattern="log/$${date:yyyy-MM}/error-%d{yyyy-MM-dd}-%i.log" append="true">
        <ThresholdFilter level="ERROR"/>
        <PatternLayout pattern="%d{yyyy.MM.dd 'at' HH:mm:ss} %-5level %l  - %msg%xEx%n"/>
        <Policies>
            <TimeBasedTriggeringPolicy/>
            <SizeBasedTriggeringPolicy size="5MB"/>
        </Policies>
        <!-- DefaultRolloverStrategy属性如不设置,则默认为最多同一文件夹下7个文件,这里设置了24 -->
        <DefaultRolloverStrategy max="24"/>
    </RollingFile>

</appenders>
<!--然后定义logger,只有定义了logger并引入的appender,appender才会生效-->
<loggers>
    <!--过滤掉spring和hibernate的一些无用的debug信息-->
    <logger name="com.example.demo.mapper" level="INFO">
    </logger>
    <logger name="com.example.demo.mapper" level="DEBUG">
    </logger>
    <logger name="com.example.demo.mapper" level="DEBUG" additivity="false">
        <appender-ref ref="Console"/>
        <appender-ref ref="RollingFileInfo"/>
        <appender-ref ref="RollingFileDebug"/>
        <appender-ref ref="RollingFileWarn"/>
        <appender-ref ref="RollingFileError"/>
    </logger>
    <root level="info">
        <appender-ref ref="Console"/>
        <appender-ref ref="RollingFileInfo"/>
        <appender-ref ref="RollingFileWarn"/>
        <appender-ref ref="RollingFileError"/>
    </root>
</loggers>

3、运行效果

优点:
1、运行信息彩色,更容易区分
2、console区输出info、debug等信息的位置
image

posted @ 2021-09-10 18:06  学习就是进步!  阅读(829)  评论(0)    收藏  举报