Отключить пользовательский печать регистратора в консоли (log4j2)
-
21-12-2019 - |
Вопрос
Можем ли мы DSable Log Print для некоторых customm создания регистратора?
У меня есть две регистраторы:
-
root logger
-
metriks logger (который печатает файл )
<Appenders>
<File name="file" fileName="app.log">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m %ex%n</Pattern>
</PatternLayout>
</File>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d{yyyy-mm-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<logger name="metrics" level="info" additivity="true">
<AppenderRef ref="file"/>
</logger>
<root level="info">
<AppenderRef ref="STDOUT"/>
</root>
</Loggers>
.
Я хочу отключить печатные сообщения в консоли для
Решение
ключ к пониманию здесь http://logging.apache.org/log4j/2.X / Manual / Configuration.html # Добавление аддитивности
Корневой логин - это родитель регистратора «Метрики».Событие журнала «Метрики» передается в Appender Root Bogger («stdout»).Это известно как аддитивность.Можно отключить его, установив атрибут аддитивности на логите «Метрики» на ложь.
<logger name="metrics" level="info" additivity="false">
<AppenderRef ref="file"/>
</logger>
. Не связан с StackOverflow