log4j2.properties
Code: Select all
property.pattern = %d [%t] %F %-5L %-5p %c - %m%n
appender.0.type = Console
appender.0.name = ALL_LOG_CONSOLE
appender.0.layout.type = PatternLayout
appender.0.layout.pattern = ${pattern}
appender.1.type = File
appender.1.name = ALL_LOG_FILE
appender.1.fileName = logs/all.log
appender.1.layout.type = PatternLayout
appender.1.layout.pattern = ${pattern}
appender.2.type = File
appender.2.name = OFF_LOG_FILE
appender.2.fileName = logs/off.log
appender.2.layout.type = PatternLayout
appender.2.layout.pattern = ${pattern}
appender.3.type = File
appender.3.name = FATAL_LOG_FILE
appender.3.fileName = logs/fatal.log
appender.3.layout.type = PatternLayout
appender.3.layout.pattern = ${pattern}
appender.4.type = File
appender.4.name = ERROR_LOG_FILE
appender.4.fileName = logs/error.log
appender.4.layout.type = PatternLayout
appender.4.layout.pattern = ${pattern}
appender.5.type = File
appender.5.name = WARN_LOG_FILE
appender.5.fileName = logs/warn.log
appender.5.layout.type = PatternLayout
appender.5.layout.pattern = ${pattern}
appender.6.type = File
appender.6.name = INFO_LOG_FILE
appender.6.fileName = logs/info.log
appender.6.layout.type = PatternLayout
appender.6.layout.pattern = ${pattern}
appender.7.type = File
appender.7.name = DEBUG_LOG_FILE
appender.7.fileName = logs/debug.log
appender.7.layout.type = PatternLayout
appender.7.layout.pattern = ${pattern}
appender.8.type = File
appender.8.name = TRACE_LOG_FILE
appender.8.fileName = logs/trace.log
appender.8.layout.type = PatternLayout
appender.8.layout.pattern = ${pattern}
logger.0.name = de.hoelzer.all.log.console
logger.0.level = ALL
logger.0.appenderRef.0.ref = ALL_LOG_CONSOLE
logger.0.appenderRef.0.level = ALL
logger.1.name = de.hoelzer.all.log.file
logger.1.level = ALL
logger.1.appenderRef.0.ref = ALL_LOG_CONSOLE
logger.1.appenderRef.0.level = ALL
logger.2.name = de.hoelzer.off.log.file
logger.2.level = OFF
logger.2.appenderRef.0.ref = OFF_LOG_FILE
logger.2.appenderRef.0.level = OFF
logger.3.name = de.hoelzer.fatal.log.file
logger.3.level = FATAL
logger.3.appenderRef.0.ref = FATAL_LOG_FILE
logger.3.appenderRef.0.level = FATAL
logger.4.name = de.hoelzer.error.log.file
logger.4.level = ERROR
logger.4.appenderRef.0.ref = ERROR_LOG_FILE
logger.4.appenderRef.0.level = ERROR
logger.5.name = de.hoelzer.warn.log.file
logger.5.level = WARN
logger.5.appenderRef.0.ref = WARN_LOG_FILE
logger.5.appenderRef.0.level = WARN
logger.6.name = de.hoelzer.info.log.file
logger.6.level = INFO
logger.6.appenderRef.0.ref = INFO_LOG_FILE
logger.6.appenderRef.0.level = INFO
logger.7.name = de.hoelzer.debug.log.file
logger.7.level = DEBUG
logger.7.appenderRef.0.ref = DEBUG_LOG_FILE
logger.7.appenderRef.0.level = DEBUG
logger.8.name = de.hoelzer.trace.log.file
logger.8.level = TRACE
logger.8.appenderRef.0.ref = TRACE_LOG_FILE
logger.8.appenderRef.0.level = TRACE
rootLogger.level = ALL
rootLogger.appenderRef.0.ref = ALL_LOG_CONSOLE
rootLogger.appenderRef.0.level = ALL
rootLogger.appenderRef.1.ref = ALL_LOG_FILE
rootLogger.appenderRef.1.level = ALL
rootLogger.appenderRef.2.ref = OFF_LOG_FILE
rootLogger.appenderRef.2.level = OFF
rootLogger.appenderRef.3.ref = FATAL_LOG_FILE
rootLogger.appenderRef.3.level = FATAL
rootLogger.appenderRef.4.ref = ERROR_LOG_FILE
rootLogger.appenderRef.4.level = ERROR
rootLogger.appenderRef.5.ref = WARN_LOG_FILE
rootLogger.appenderRef.5.level = WARN
rootLogger.appenderRef.6.ref = INFO_LOG_FILE
rootLogger.appenderRef.6.level = INFO
rootLogger.appenderRef.7.ref = DEBUG_LOG_FILE
rootLogger.appenderRef.7.level = DEBUG
rootLogger.appenderRef.8.ref = TRACE_LOG_FILE
rootLogger.appenderRef.8.level = TRACE
all.log enthält Meldungen aller Ebenen.
debug.log enthält Meldungen der INFO-Ebene, auch wenn keine Debug-Aufrufe an das Protokoll vorgenommen wurden.
error.log, fatal.log, off.log und warn.log sind leer.
info.log enthält jedoch nur Meldungen der INFO-Ebene Das Format stimmt etwas ab.
trace.log enthält Nachrichten auf INFO- und TRACE-Ebene.
Die Frage ist, warum Trace.log und debug.log INFO-Nachrichten enthalten?
Mobile version