wlzboy
5 天以前 7de1396e315896dbc72a9d54e44f77434ea90f18
ruoyi-admin/src/main/resources/logback.xml
@@ -1,9 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!-- 日志存放路径 -->
   <property name="log.path" value="/home/ruoyi/logs" />
   <property name="log.path" value="./logs" />
    <!-- 日志输出格式 -->
   <property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
   <!-- 单个日志文件最大大小 -->
   <property name="log.maxFileSize" value="100MB" />
   <!-- 日志文件总大小上限 -->
   <property name="log.totalSizeCap" value="10GB" />
   <!-- 控制台输出 -->
   <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
@@ -15,12 +19,16 @@
   <!-- 系统日志输出 -->
   <appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
       <file>${log.path}/sys-info.log</file>
        <!-- 循环政策:基于时间创建日志文件 -->
      <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!-- 循环政策:基于时间和大小创建日志文件 -->
      <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
         <fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern>
         <!-- 日志最大的历史 60天 -->
         <maxHistory>60</maxHistory>
         <fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
         <!-- 单个日志文件最大大小 -->
         <maxFileSize>${log.maxFileSize}</maxFileSize>
         <!-- 日志最大的历史 30天(生产环境减少保留时间) -->
         <maxHistory>30</maxHistory>
         <!-- 日志文件总大小上限 -->
         <totalSizeCap>${log.totalSizeCap}</totalSizeCap>
      </rollingPolicy>
      <encoder>
         <pattern>${log.pattern}</pattern>
@@ -37,12 +45,16 @@
   
   <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
       <file>${log.path}/sys-error.log</file>
        <!-- 循环政策:基于时间创建日志文件 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!-- 循环政策:基于时间和大小创建日志文件 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 日志文件名格式 -->
            <fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern>
         <!-- 日志最大的历史 60天 -->
            <fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
         <!-- 单个日志文件最大大小 -->
         <maxFileSize>${log.maxFileSize}</maxFileSize>
         <!-- 日志最大的历史 60天(错误日志保留更长时间) -->
         <maxHistory>60</maxHistory>
         <!-- 日志文件总大小上限 -->
         <totalSizeCap>5GB</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
@@ -60,31 +72,81 @@
   <!-- 用户访问日志输出  -->
    <appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender">
      <file>${log.path}/sys-user.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <!-- 按天回滚 daily -->
            <fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.log</fileNamePattern>
            <!-- 日志最大的历史 60天 -->
            <maxHistory>60</maxHistory>
            <fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
         <!-- 单个日志文件最大大小 -->
         <maxFileSize>${log.maxFileSize}</maxFileSize>
            <!-- 日志最大的历史 30天 -->
            <maxHistory>30</maxHistory>
         <!-- 日志文件总大小上限 -->
         <totalSizeCap>5GB</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>${log.pattern}</pattern>
        </encoder>
    </appender>
   
   <!-- 系统模块日志级别控制  -->
   <logger name="com.ruoyi" level="info" />
   <!-- Spring日志级别控制  -->
   <logger name="org.springframework" level="warn" />
   <root level="info">
      <appender-ref ref="console" />
   </root>
   <!-- 慢SQL日志单独输出(便于性能监控和优化) -->
   <appender name="slow-sql" class="ch.qos.logback.core.rolling.RollingFileAppender">
      <file>${log.path}/slow-sql.log</file>
      <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
         <fileNamePattern>${log.path}/slow-sql.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
         <maxFileSize>50MB</maxFileSize>
         <maxHistory>15</maxHistory>
         <totalSizeCap>2GB</totalSizeCap>
      </rollingPolicy>
      <encoder>
         <pattern>${log.pattern}</pattern>
      </encoder>
   </appender>
   
   <!--系统操作日志-->
    <root level="info">
        <appender-ref ref="file_info" />
        <appender-ref ref="file_error" />
    </root>
   <!-- 开发环境配置 -->
   <springProfile name="dev,test">
      <!-- 系统模块日志级别控制  -->
      <logger name="com.ruoyi" level="info" />
      <!-- Spring日志级别控制  -->
      <logger name="org.springframework" level="warn" />
      <!-- MyBatis SQL日志 -->
      <logger name="com.ruoyi.system.mapper" level="debug" />
      <root level="info">
         <appender-ref ref="console" />
         <appender-ref ref="file_info" />
         <appender-ref ref="file_error" />
      </root>
   </springProfile>
   <!-- 生产环境配置 -->
   <springProfile name="prod">
      <!-- 系统模块日志级别控制(生产环境调整为WARN,减少INFO日志) -->
      <logger name="com.ruoyi" level="warn" />
      <!-- Spring日志级别控制  -->
      <logger name="org.springframework" level="error" />
      <!-- Druid数据源日志控制 -->
      <logger name="com.alibaba.druid" level="error" />
      <!-- MyBatis日志控制 -->
      <logger name="org.mybatis" level="error" />
      <logger name="org.apache.ibatis" level="error" />
      <!-- HTTP客户端日志控制 -->
      <logger name="org.apache.http" level="error" />
      <!-- 特定业务模块保留INFO级别(根据需要调整) -->
      <logger name="com.ruoyi.system.service.impl.LegacySystemSyncServiceImpl" level="info" />
      <logger name="com.ruoyi.system.service.impl.VehicleGpsSegmentMileageServiceImpl" level="info" />
      <!-- 慢SQL日志(Druid监控) -->
      <logger name="druid.sql.Statement" level="warn" additivity="false">
         <appender-ref ref="slow-sql" />
      </logger>
      <root level="warn">
         <!-- 生产环境不输出到控制台,减少资源消耗 -->
         <!-- <appender-ref ref="console" /> -->
         <appender-ref ref="file_info" />
         <appender-ref ref="file_error" />
      </root>
   </springProfile>
   
   <!--系统用户操作日志-->
    <logger name="sys-user" level="info">