Свойства log4j2 устанавливают разные пороги для консоли и файла - PullRequest
0 голосов
/ 08 февраля 2019

Я хочу установить консольный порог для ошибки только для журнала и порог для файлового приложения на информационном уровне.

status = info
name= properties_configuration

property.basePath = C:\\

appender.console.type = Console
appender.console.name = consoleLogger
appender.console.target = SYSTEM_OUT
appender.console.layout.type = PatternLayout
appender.console.threshold=ERROR

appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %level [%t] [%c] [%M] [%l] - %msg%n

appender.rolling.type = RollingFile
appender.rolling.name = fileLogger
appender.rolling.fileName= ${basePath}my.log
appender.rolling.filePattern= ${basePath}my_%d{yyyyMMdd}.log.gz
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} %level [%t] [%c] [%M] [%l] - %msg%n

appender.rolling.policies.type = Policies

appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling.policies.time.interval = 1
appender.rolling.policies.time.modulate = true
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.delete.type = Delete
appender.rolling.strategy.delete.basePath = ${basePath}
appender.rolling.strategy.delete.maxDepth = 1
appender.rolling.strategy.delete.ifLastModified.type = IfLastModified
appender.rolling.strategy.delete.ifLastModified.age = 1d

rootLogger.level = info
rootLogger.additivity = false
rootLogger.appenderRef.rolling.ref = fileLogger
rootLogger.appenderRef.console.ref = consoleLogger

Я установил порог, но уровень информации регистрируется в файле, но также и в консоли.

Что не так?Спасибо

1 Ответ

0 голосов
/ 08 февраля 2019

Вы можете использовать фильтр, чтобы приложение консоли не регистрировало выше уровня ошибки, как показано ниже.

appender.console.filter.threshold.type = ThresholdFilter
appender.console.filter.threshold.level = error
...