logback - 使用 appender 来屏蔽日志

时间:2021-02-21 15:05:13

标签: logging appender spring-logback

我有一个 appender,负责屏蔽数据-

        <encoder class="net.logstash.logback.encoder.LogstashEncoder">
            <jsonGeneratorDecorator class="com.logging.secure.Masker"/>
        </encoder>
    </appender>

我还有另一个负责打印错误的 appender。

  <appender name="ExceptionAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>/logs/${spring.application.name}/Exceptions.log</file>
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>50MB</maxFileSize>
        </triggeringPolicy>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>/logs/${spring.application.name}/backup/Exceptions.%d{yyyy-MM-dd}.log.gz</fileNamePattern>
            <maxHistory>31</maxHistory>
        </rollingPolicy>
        <encoder>
            <charset>UTF-8</charset>
            <pattern>${EXCEPTION_PATTERN}</pattern>
        </encoder>
    </appender>

<appender name="ExceptionAppender" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${EXCEPTION_PATTERN}</pattern>
        </encoder>
    </appender>

<appender name="ASYNCExceptionAppender" class="ch.qos.logback.classic.AsyncAppender">
    <appender-ref ref="ExceptionAppender"/>
    <discardingThreshold>0</discardingThreshold>
</appender>

这是我的记录器

<logger name="ExceptionLogger" level="ERROR" additivity="false">
    <springProfile name="dev">
        <appender-ref ref="STDOUT" />
    </springProfile>
    <appender-ref ref="ASYNCExceptionAppender"/>
</logger>

现在我希望当我打印异常时,它将使用我的 MaskedAppender 进行屏蔽

我该怎么做? 我设法做的就是打印一个异常消息和一个蒙面消息...... 我希望打印的日志消息只有一个,并且必须被屏蔽

0 个答案:

没有答案