我有一个 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 进行屏蔽
我该怎么做? 我设法做的就是打印一个异常消息和一个蒙面消息...... 我希望打印的日志消息只有一个,并且必须被屏蔽