archivo de configuración de registro logback-spring.xml

<? xml version = "1.0" encoding = "UTF-8"?> 
<configuration debug = "false"> 
    <! - 定义 日志 文件 的 存储 地址 勿 在 LogBack 的 配置 中 使用 相对 路径 -> 
    <nombre de propiedad = "logPath" value = "E: / data / logs" /> 
    <! - <property name = "logPath" value = "/ data / logs" /> -> 
    <property name = "appName" value = " joe-zookeeper "/> 
    <property name =" maxHistory "value =" 30 "/> 
    <property name =" maxFileSize "value =" 10MB "/> 
    <! - 控制台 输出 -> 
    <appender name =" STDOUT "class =" ch.qos.logback.core.ConsoleAppender "> 
        <encoder class =" ch.qos.logback.classic.encoder.PatternLayoutEncoder "> 
            <! - salida formateada:% d significa fecha,% hilo significa nombre del hilo,% -5level: el nivel se muestra desde la izquierda con 5 caracteres de ancho% msg: mensaje de registro,% n es un carácter de nueva línea ->
            <patrón>% fecha {aaaa-MM-dd HH: mm: ss}% resaltado (% - 5 niveles)% boldCyan ([% hilo])  
                % boldGreen (% logger {50}) -
                % msg% n 
            </patrón> 
            <charset> UTF-8 </charset> 
        </encoder> 
    </appender> 
    <! - INFO log appender -> 
    <appender name = "INFO" class = "ch.qos.logback.core.rolling.RollingFileAppender"> 
        <rollingPolicy class = "ch.qos. logback.core.rolling.TimeBasedRollingPolicy "> 
            <! - 
              La ubicación de almacenamiento y el nombre de archivo del archivo generado durante el rodaje% d {aaaa-MM-dd}: registro rodante por día 
              % i: cuando el tamaño del archivo excede maxFileSize, siga Realice el desplazamiento de archivos 
              -> 
            <FileNamePattern> $ {logPath} / $ {appName} / info.% d {aaaa-MM-dd} .log </FileNamePattern> 
            <! - Número de días para mantener los archivos de registro -> 
            <MaxHistory>> $ {maxHistory} </ MaxHistory> 
        </rollingPolicy>
        <encoder class = "ch.qos.logback.classic.encoder.PatternLayoutEncoder"> 
            <! - salida formateada:% d representa la fecha,% hilo representa el nombre del hilo,% -5level: el nivel se muestra desde la izquierda con 5 caracteres de ancho% msg: mensaje de registro,% n es un carácter de nueva línea -> 
            <patrón> 
                % fecha {aaaa-MM-dd HH: mm: ss}% boldBlue (% - 5level)% boldCyan ([% hilo]) % boldGreen (% logger {50}) - 
                % msg% n 
            </pattern> 
            <charset> UTF-8 </charset> 
        </encoder> 
        <! - Tamaño máximo del archivo de registro -> 
        <triggeringPolicy class = "ch. qos.logback. core.rolling.SizeBasedTriggeringPolicy "> 
            <MaxFileSize> $ {maxFileSize} </MaxFileSize> 
        </triggeringPolicy> 

        <filter class =" ch.qos.logback.classic.filter.LevelFilter ">
            <! - Solo imprime el registro INFO -> 
            <level> INFO </level> 
            <onMatch> ACCEPT </onMatch> 
            <onMismatch> DENY </onMismatch> 
        </filter> 
    </appender> 

    <! - WARN log appender -> 
    <appender name = "WARN" class = "ch.qos.logback.core.rolling.RollingFileAppender"> 
        <rollingPolicy class = "ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> 
            <! - Al 
              rodar La ubicación de almacenamiento y el nombre de archivo del archivo generado% d {aaaa-MM-dd}: registro rodante por día 
              % i: cuando el tamaño del archivo excede maxFileSize, el archivo transferido se realiza de acuerdo con i  
              ->
            <FileNamePattern> $ {logPath} / $ {appName} /warn.%d {aaaa-MM-dd} .log </FileNamePattern>
            <! - Número de días para conservar los archivos de registro ->
            <MaxHistory>> $ {maxHistory} </MaxHistory> 
        </rollingPolicy> 
        <encoder class = "ch.qos.logback.classic.encoder.PatternLayoutEncoder"> 
            <! - salida formateada:% d significa fecha,% hilo significa hilo name,% -5level: el nivel se muestra desde la izquierda con 5 caracteres de ancho% msg: mensaje de registro,% n es un carácter de nueva línea -> 
            <patrón> 
                % fecha {aaaa-MM-dd HH: mm: ss}% boldYellow (% -5level)% boldCyan ([% thread])% boldGreen (% logger {50}) - 
                % msg% n 
            </pattern> 
            <charset> UTF-8 </charset> 
        </encoder> 
        <! - El archivo de registro más grande El tamaño de ->  
        <triggeringPolicy class = "ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <MaxFileSize> $ {maxFileSize} </MaxFileSize> 
        </triggeringPolicy> 

        <filter class = "ch.qos.logback.classic.filter.LevelFilter"> 
            <! - 只 打印 INFO 日志 -> 
            <level> WARN </level> 
            <onMatch> ACCEPT </onMatch> 
            <onMismatch> DENY </onMismatch> 
        </filter> 
    </appender> 

    <! - ERROR 日志 appender -> 
    <appender name = "ERROR" class = "ch.qos.logback.core.rolling.RollingFileAppender"> 
        <rollingPolicy class = "ch.qos. logback.core.rolling.TimeBasedRollingPolicy "> 
            <!
             --La 
             ubicación de almacenamiento y el nombre de archivo del archivo generado durante el rodaje% d {aaaa-MM-dd}: registro rodante por día % i: cuando el tamaño del archivo excede maxFileSize, el rodaje de archivos se realiza de acuerdo con i 
             ->
            <fileNamePattern> $ {logPath} / $ {appName} /error.%d {aaaa-MM-dd} .log </fileNamePattern> 
            <! - El historial más grande del registro ->
            <maxHistory> $ {maxHistory} </maxHistory> 
        </rollingPolicy> 
        <encoder class = " ch.qos.logback.classic.encoder.PatternLayoutEncoder "> 
            <! - salida formateada:% d representa la fecha,% hilo representa el nombre del hilo,% -5level: el nivel se muestra desde la izquierda con 5 caracteres de ancho% msg : mensaje de registro,% n es un carácter de nueva línea -> 
            <patrón> 
                % fecha {aaaa-MM-dd HH: mm: ss}% boldRed (% - 5level)% boldCyan ([% thread])% boldGreen (% logger {50}) - 
                % msg% n 
            </pattern> 
            <charset> UTF-8 </charset> 
        </encoder> 
        <filter class = "ch.qos.logback.classic.filter.LevelFilter">
            <! - Imprimir solo el registro de errores ->
            <level> ERROR </level>  
            <onMatch> ACCEPT </onMatch>
            <onMismatch> DENY </onMismatch>
        </filter> 
    </appender> 
    <! - 日志 输出 级别 -> 
    <root level = "ERROR"> 
        <appender-ref ref = "STDOUT" /> 
        <appender-ref ref = "INFO" /> 
        <appender-ref ref = "WARN" /> 
        <appender-ref ref = "ERROR" /> 
    </root> 
</configuration>

Supongo que te gusta

Origin blog.csdn.net/qq_38428623/article/details/93186517
Recomendado
Clasificación