All Downloads are FREE. Search and download functionalities are using the official Maven repository.

1.ameba-lib.4.0.source-code.logback-appenders.xml Maven / Gradle / Ivy

<?xml version="1.0" encoding="UTF-8"?>
<included>

    <property name="MODULE_NAME" value="${MODULE_NAME:-AMEBA}"/>
    <property name="LOG_TEMP" value="${LOG_TEMP:-${BUILD_FOLDER:-.}}"/>
    <variable scope="context" name="mdcPattern" value="%replace(;%X{MSGKEY};%X{MSGDATA}){';+( |$)', ''}"/>

    <conversionRule conversionWord="tid" converterClass="org.ameba.logging.ThreadIdProvider" />
    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
    <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
    <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
    <property name="LOG_PATH" value="${LOG_PATH:-${CATALINA_BASE:-${LOG_TEMP:-${java.io.tmpdir:-/.}}}}"/>
    <property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr([${PID:- }/%tid]){magenta} %clr(%X{X-Tenant:-none}){red} %clr(-){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>

    <statusListener class="ch.qos.logback.core.status.NopStatusListener" />

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
        </encoder>
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>TRACE</level>
        </filter>
    </appender>
    <appender name="LOGFILE" class="ch.qos.logback.classic.sift.SiftingAppender">
        <discriminator class="org.ameba.logging.TenantDiscriminator" />
        <sift>
            <appender name="FILE-${Tenant}" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <file>${LOG_PATH}/${Tenant}-${MODULE_NAME}.log</file>
                <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
                    <fileNamePattern>${LOG_PATH}/${Tenant}-${MODULE_NAME}.%i.log.gz</fileNamePattern>
                    <minIndex>1</minIndex>
                    <maxIndex>10</maxIndex>
                </rollingPolicy>

                <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                    <maxFileSize>10MB</maxFileSize>
                </triggeringPolicy>

                <encoder>
                    <pattern>${Tenant} ${MODULE_NAME} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{X-RequestID} %-5level %clr([${PID:- }/%tid]){magenta} %clr(-){faint} [%-40.40logger{39}]${mdcPattern} : %msg%n</pattern>
                </encoder>
            </appender>
        </sift>
    </appender>
    <appender name="EXCFILE" class="ch.qos.logback.classic.sift.SiftingAppender">
        <discriminator class="org.ameba.logging.TenantDiscriminator" />
        <sift>
            <appender name="EXCFILE-${Tenant}" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <file>${LOG_PATH}/${Tenant}-${MODULE_NAME}.exlog</file>
                <!--prudent>false</prudent-->

                <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
                    <fileNamePattern>${LOG_PATH}/${Tenant}-${MODULE_NAME}.%i.exlog.gz</fileNamePattern>
                    <minIndex>1</minIndex>
                    <maxIndex>10</maxIndex>
                </rollingPolicy>

                <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                    <maxFileSize>10MB</maxFileSize>
                </triggeringPolicy>

                <encoder>
                    <pattern>${Tenant} ${MODULE_NAME} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{X-RequestID} %-5level %clr([${PID:- }/%tid]){magenta} %clr(-){faint} [%-40.40logger{39}]${mdcPattern} : %msg%n</pattern>
                </encoder>
            </appender>
        </sift>
    </appender>
    <appender name="TSL" class="ch.qos.logback.classic.sift.SiftingAppender">
        <discriminator class="org.ameba.logging.TenantDiscriminator" />
        <sift>
            <appender name="TSL-${Tenant}" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <file>${LOG_PATH}/${Tenant}-${MODULE_NAME}.tslog</file>
                <!--prudent>false</prudent-->

                <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
                    <fileNamePattern>${LOG_PATH}/${Tenant}-${MODULE_NAME}.%i.tslog.gz</fileNamePattern>
                    <minIndex>1</minIndex>
                    <maxIndex>10</maxIndex>
                </rollingPolicy>

                <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                    <maxFileSize>10MB</maxFileSize>
                </triggeringPolicy>

                <encoder>
                    <pattern>${Tenant} ${MODULE_NAME} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{X-RequestID} %-5level %clr([${PID:- }/%tid]){magenta} %clr(-){faint} [%-40.40logger{39}]${mdcPattern} : %msg%n</pattern>
                </encoder>
            </appender>
        </sift>
    </appender>
</included>




© 2015 - 2025 Weber Informatics LLC | Privacy Policy