logfile.xml 2.7 KB
<?xml version="1.0" encoding="UTF-8"?>
<included>
    <property name="filePrefix" value="fw_hestia"/>
    <property name="logMaxHistory" value="2"/>
    <property name="logfileMaxSize" value="512MB"/>
    <property name="logTotalSizeCap" value="512MB"/>
    <!-- 所有日志 -->
    <appender name="DEFAULT_FILE"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${dynamic.log.path}/${filePrefix}_all.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${dynamic.log.path}/${filePrefix}_all.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxHistory>${logMaxHistory}</maxHistory>
            <maxFileSize>${logfileMaxSize}</maxFileSize>
            <totalSizeCap>${logTotalSizeCap}</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%c] - %m%n</pattern>
            <charset>${charSet}</charset>
        </encoder>
    </appender>

    <!-- 异步:所有日志 -->
    <appender name="ASYNC_DEFAULT_FILE" class="ch.qos.logback.classic.AsyncAppender">
        <discardingThreshold>0</discardingThreshold>
        <queueSize>500</queueSize>
        <appender-ref ref="DEFAULT_FILE"/>
    </appender>

    <!-- 错误日志 -->
    <appender name="ERROR_FILE"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
        <file>${dynamic.log.path}/${filePrefix}_error.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${dynamic.log.path}/${filePrefix}_error.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <maxHistory>${logMaxHistory}</maxHistory>
            <maxFileSize>${logfileMaxSize}</maxFileSize>
            <totalSizeCap>${logTotalSizeCap}</totalSizeCap>
        </rollingPolicy>
        <encoder>
            <pattern>[%-5p] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%c] - %m%n</pattern>
            <charset>${charSet}</charset>
        </encoder>
    </appender>

    <!-- 异步:错误日志 -->
    <appender name="ASYNC_ERROR_FILE" class="ch.qos.logback.classic.AsyncAppender">
        <discardingThreshold>0</discardingThreshold>
        <queueSize>500</queueSize>
        <appender-ref ref="ERROR_FILE"/>
    </appender>

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%highlight([%-1p]) %highlight(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %boldMagenta(%logger) %cyan(%msg%n)</pattern>
            <charset>${charSet}</charset>
        </encoder>
    </appender>
</included>