log4j2 日志滚动配置, log4j2.xml 完整配置如下 :

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="Info" monitorInterval="30">
    <Properties>
        <Property name="LOG_PATTERN">%d{yyyy-MM-dd HH:mm:ss} %-5p %m%n%throwable</Property>
        <Property name="APP_LOG_ROOT">./logs</Property>
    </Properties>
    <Appenders>
        <Console name="Console" target="SYSTEM_OUT" follow="true">
            <PatternLayout pattern="${LOG_PATTERN}"/>
        </Console>
        <RollingFile name="InfoLog" fileName="${APP_LOG_ROOT}/log.log"
                     filePattern="${APP_LOG_ROOT}/log-%d{yyyy-MM-dd}-%i.log">
            <Policies>
                <SizeBasedTriggeringPolicy size="10 MB"/>
                <TimeBasedTriggeringPolicy interval="1" modulate="true"/>
            </Policies>
            <DefaultRolloverStrategy max="10"/>
            <PatternLayout pattern="${LOG_PATTERN}"/>
        </RollingFile>
    </Appenders>
    <Loggers>
        <Root level="Info">
            <AppenderRef ref="Console"/>
            <AppenderRef ref="InfoLog"/>
        </Root>
    </Loggers>
</Configuration>

 

pom.xml 中引入依赖:

   <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.30</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-api</artifactId>
            <version>2.17.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.17.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j-impl</artifactId>
            <version>2.17.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-web</artifactId>
            <version>2.17.0</version>
        </dependency>

如果依赖了 spring-boot-starter, 还需要配置如下 ,才能写日志,不然 不写日志;

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
            <version>2.3.12.RELEASE</version>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-logging</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

 

posted on 2025-06-12 11:30  wisdo  阅读(61)  评论(0)    收藏  举报