Различные уровни журнала в разных местах - PullRequest
0 голосов
/ 24 сентября 2018

У меня есть куча классов в com.example.Я хочу, чтобы мой файл журнала записывал журнал отладки, а консоль - только информацию.

Я использую log4j2.

Вот мой файл log4j2.properties.

name=PropertiesConfig
property.filename = logs

# configure both the appenders 
# CONSOLE APPENDER
appender.console.type = console
appender.console.name = consoleAppender
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%t] %c{1} - %msg%n

# LOGFILE appender
appender.logfile.type = File
appender.logfile.name = logfileAppender
appender.logfile.fileName=extract.log
appender.logfile.layout.type=PatternLayout
appender.logfile.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

logger.example.name = com.example
logger.example.level = debug
logger.example.additivity = true
logger.example.appenderRef.logfile.ref = logfileAppender
logger.example.appenderRef.console.ref = consoleAppender

# configure the loggers, starting from the root logger.
rootLogger.level = info

Какие журналы для отладки на обоих.

Я пытаюсь это...

name=PropertiesConfig
property.filename = logs

# configure both the appenders 
# CONSOLE APPENDER
appender.console.type = console
appender.console.name = consoleAppender
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5level] [%t] %c{1} - %msg%n

# LOGFILE appender
appender.logfile.type = File
appender.logfile.name = logfileAppender
appender.logfile.fileName=extract.log
appender.logfile.layout.type=PatternLayout
appender.logfile.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

logger.example.name = com.example
logger.example.level = debug
logger.example.additivity = true
logger.example.appenderRef.logfile.ref = logfileAppender

logger.info.name = com.example
logger.info.level = info
logger.info.additivity = true
logger.info.appenderRef.console.ref = consoleAppender

# configure the loggers, starting from the root logger.
rootLogger.level = info

Но тогда в консоль ничего не попадает.

Есть идеи?

1 Ответ

0 голосов
/ 04 октября 2018

Я также столкнулся с этой проблемой, и когда я добавляю

 rootLogger.appenderRef.console.ref=consoleAppender
 rootLogger.appenderRef.rolling.ref=RollingFile

в конце моего log4j2.Это сработало.ConsoleAppender и RollingFile - это имена appender.console.name и appender.rolling.name Это конец моей конфигурации log4j2:

loggers=console, rolling
logger.console.name=console
logger.console.level=info
logger.console.additivity=false
logger.console.appenderRef.console.ref=consoleAppender

logger.rolling.name=com.viking
logger.rolling.level=info
logger.rolling.additivity=false
logger.rolling.appenderRef.rolling.ref=RollingFile

rootLogger.level=info
rootLogger.additivity=false
rootLogger.appenderRef.console.ref=consoleAppender
rootLogger.appenderRef.rolling.ref=RollingFile
...