sen
2025-08-18 424d9748add1a2ade5ca33e8981e5bc4e7a03ab6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 日志存放路径 引用各环境 -->
    <springProperty name="logBasePath" scope="context" source="logging.logback.path" />
    <!-- 日志输出格式 -->
    <property name="logPattern" value="%d{dd HH:mm:ss.SSS} %-5level %logger{20}#%method,%line[%thread] - %msg%n" />
 
    <springProperty scope="context" name="logLeve" source="logging.logback.leve"/>
    <springProperty scope="context" name="logConsoleLeve" source="logging.logback.consoleLeve"/>
 
    <!-- 控制台输出 -->
    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>${logConsoleLeve}</level>
        </filter>
        <encoder>
            <pattern>${logPattern}</pattern>
        </encoder>
    </appender>
 
    <!-- 系统日志输出 -->
    <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logBasePath}/sys-info.log</file>
        <!-- 循环政策:基于时间创建日志文件 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
            <fileNamePattern>${logBasePath}/info/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- 日志最大的历史 60天 -->
            <maxHistory>60</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>${logPattern}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>${logLeve}</level>
        </filter>
    </appender>
 
    <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logBasePath}/sys-error.log</file>
        <!-- 循环政策:基于时间创建日志文件 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
            <fileNamePattern>${logBasePath}/error/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- 日志最大的历史 60天 -->
            <maxHistory>60</maxHistory>
        </rollingPolicy>
        <encoder>
            <pattern>${logPattern}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <!-- 过滤的级别 -->
            <level>ERROR</level>
            <!-- 匹配时的操作:接收(记录) -->
            <onMatch>ACCEPT</onMatch>
            <!-- 不匹配时的操作:拒绝(不记录) -->
            <onMismatch>DENY</onMismatch>
        </filter>
    </appender>
 
 
    <!-- 系统模块日志级别控制  -->
    <logger name="com.ruoyi" level="${logLeve}" />
    <!-- Spring日志级别控制  -->
    <logger name="org.springframework" level="${logLeve}" />
    <!-- MyBatis 的日志输出 -->
    <logger name="org.mybatis" level="${logLeve}" />
    <logger name="com.baomidou.mybatisplus" level="${logLeve}"/>
    <logger name="java.sql" level="${logLeve}" />
    <root >
        <!--系统操作日志-->
        <appender-ref ref="console"/>
        <!--info日志-->
        <appender-ref ref="file_info" />
        <!--error日志-->
        <appender-ref ref="file_error" />
    </root>
</configuration>