广州市综治平台后端
xusd
2025-06-07 36306491396230522fa20585c2621a7fc899849a
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 配置一天一个日志文件,INFO信息存在一个文件中,ERROR信息存在一个文件中 -->
    <!-- 日志级别从低到高 TRACE < DEBUG < INFO < WARN < ERROR -->
 
    <!-- 文件输出格式 -->
    <property name="PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%thread] [%logger{36}] - %msg%n" />
    <property name="CT_PATTERN" value="[%d{yyyy-MM-dd HH:mm:ss.SSS}] [%-5level] [%logger{36}] - %msg%n" />
    <!--  日志文件目录  -->
    <property name="LOG_HOME" value="logs/utils/service" />
    <property name="CT_LOG_HOME" value="logs/utils/business" />
    <!--  日志文件名称  -->
    <property name="LOG_NAME" value="utils" />
 
    <!-- 开发环境日志配置 -->
    <springProfile name="dev">
        <!-- 配置控制台打印信息 -->
        <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
            <encoder charset="UTF-8">
                <!-- 文件输出格式 -->
                <pattern>${PATTERN}</pattern>
            </encoder>
        </appender>
 
        <!-- 设置根日志级别,如果日志级别低于设置的级别,则该日志不会被记录。如果日志级别高于设置的级别,那么这条日志将会被记录 -->
        <root level="INFO">
            <appender-ref ref="CONSOLE" />
        </root>
 
        <logger name="cn.huge" level="DEBUG" additivity="true"/>
        <logger name="org.hibernate.SQL" level="DEBUG" additivity="true"/>
        <!-- 为 MyBatis 设置 DEBUG 级别的日志 -->
        <logger name="com.baomidou.mybatisplus" level="INFO" additivity="false">
            <appender-ref ref="CONSOLE" />
        </logger>
    </springProfile>
 
    <!-- 测试环境+生产环境,多个使用逗号隔开 -->
    <springProfile name="test,prod">
        <!-- 配置DEBUG文件 -->
        <appender name="DEBUG_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- 日志文件名称 -->
                <fileNamePattern>${LOG_HOME}/${LOG_NAME}.debug.%d{yyyyMMdd}.%i.log</fileNamePattern>
                <!-- 日志保留31天 -->
                <maxHistory>31</maxHistory>
                <!-- 所有日志大小不超过30GB -->
                <totalSizeCap>30GB</totalSizeCap>
                <!-- 单个日志文件大小不超过10MB -->
                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <maxFileSize>10MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
 
            <encoder charset="UTF-8">
                <!-- 文件输出格式 -->
                <pattern>${PATTERN}</pattern>
            </encoder>
 
            <!-- 只打印 DEBUG 日志 -->
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>DEBUG</level>
                <!-- 命中就接受 -->
                <onMatch>ACCEPT</onMatch>
                <!-- 没有命中就过滤掉 -->
                <onMismatch>DENY</onMismatch>
            </filter>
        </appender>
 
        <!-- 配置INFO文件 -->
        <appender name="INFO_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <!-- 日志文件名称 -->
                <fileNamePattern>${LOG_HOME}/${LOG_NAME}.info.%d{yyyyMMdd}.%i.log</fileNamePattern>
                <!-- 日志保留31天 -->
                <maxHistory>31</maxHistory>
                <!-- 所有日志大小不超过30GB -->
                <totalSizeCap>30GB</totalSizeCap>
                <!-- 单个日志文件大小不超过10MB -->
                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <maxFileSize>10MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
 
            <encoder charset="UTF-8">
                <!-- 文件输出格式 -->
                <pattern>${PATTERN}</pattern>
            </encoder>
 
            <!-- 只打印 INFO 日志 -->
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>INFO</level>
                <!-- 命中就过滤掉 -->
                <onMatch>ACCEPT</onMatch>
                <!-- 没有命中就接受 -->
                <onMismatch>DENY</onMismatch>
            </filter>
        </appender>
 
        <!-- 配置ERROR文件 -->
        <appender name="ERROR_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                !-- 日志文件名称 -->
                <fileNamePattern>${LOG_HOME}/${LOG_NAME}.error.%d{yyyyMMdd}.%i.log</fileNamePattern>
                <!-- 日志保留31天 -->
                <maxHistory>31</maxHistory>
                <!-- 所有日志大小不超过30GB -->
                <totalSizeCap>30GB</totalSizeCap>
                <!-- 单个日志文件大小不超过10MB -->
                <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                    <maxFileSize>10MB</maxFileSize>
                </timeBasedFileNamingAndTriggeringPolicy>
            </rollingPolicy>
 
            <encoder charset="UTF-8">
                <!-- 文件输出格式 -->
                <pattern>${PATTERN}</pattern>
            </encoder>
 
            <!-- 只打印 ERROR 日志 -->
            <filter class="ch.qos.logback.classic.filter.LevelFilter">
                <level>ERROR</level>
                <!-- 命中就过滤掉 -->
                <onMatch>ACCEPT</onMatch>
                <!-- 没有命中就接受 -->
                <onMismatch>DENY</onMismatch>
            </filter>
        </appender>
 
        <!-- 为 MyBatis 设置 DEBUG 级别的日志 -->
        <logger name="org.apache.ibatis" level="DEBUG"/>
        <!-- 输出 SQL 语句和参数 -->
        <logger name="org.apache.ibatis.binding" level="DEBUG"/>
        <!-- 输出 SQL 语句执行情况 -->
        <logger name="org.apache.ibatis.session" level="DEBUG"/>
        <!-- 输出 SQL 语句执行结果 -->
        <logger name="org.apache.ibatis.executor" level="DEBUG"/>
        <!-- 输出 SQL 语句 -->
        <logger name="org.apache.ibatis.scripting" level="DEBUG"/>
 
        <!-- 设置根日志级别,如果日志级别低于设置的级别,则该日志不会被记录。如果日志级别高于设置的级别,那么这条日志将会被记录 -->
        <root level="DEBUG">
            <appender-ref ref="DEBUG_FILE" />
            <appender-ref ref="INFO_FILE" />
            <appender-ref ref="ERROR_FILE" />
        </root>
 
    </springProfile>
</configuration>