如何将 log4j 属性更改为 log4j2 属性?
How to change log4j properties to log4j2 properties?
log4j.rootCategory=DEBUG,CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=DEBUG
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d %-5p %-30c - %m%n
log4j.logger.org.apache.velocity=WARN
我需要从 log4j 迁移到 log4j2,并且我需要像上面那样更改属性文件。也许有人可以帮助我了解 log4j2.properties 会是什么样子。
这是我自己做的,但我不确定是否正确
appenders = console
appender.console.type = Console
appender.console.name = STDOUT
appender.console.threshold=DEBUG
appender.console.layout.type=PatternLayout
appender.console.layout.pattern=%d %-5p %-30c - %m%n
Log4j2 的属性格式不是最流行的格式。您可以查看 this answer 了解此格式背后的逻辑。
您的配置缺少记录器的配置:
appender.1.type=Console
appender.1.name=STDOUT
appender.1.target=SYSTEM_OUT
appender.1.layout.type=PatternLayout
appender.1.layout.pattern=%d %-5p %-30c - %m%n
rootLogger.level=DEBUG
rootLogger.appenderRef.1.ref=STDOUT
rootLogger.appenderRef.1.level=DEBUG
logger.1.name=org.apache.velocity
logger.1.level=WARN
另请注意,appender 的阈值通常配置在 AppenderRef
(参见 this question)。
我个人觉得 XML 格式更容易理解:
<Configuration xmlns="http://logging.apache.org/log4j/2.0/config">
<Appenders>
<Console
name="Console"
target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p %-30c - %m%n" />
</Console>
</Appenders>
<Loggers>
<Root level="DEBUG">
<AppenderRef
ref="Console"
level="DEBUG" />
</Root>
<Logger
name="org.apache.velocity"
level="WARN" />
</Loggers>
</Configuration>
log4j.rootCategory=DEBUG,CONSOLE
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Threshold=DEBUG
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%d %-5p %-30c - %m%n
log4j.logger.org.apache.velocity=WARN
我需要从 log4j 迁移到 log4j2,并且我需要像上面那样更改属性文件。也许有人可以帮助我了解 log4j2.properties 会是什么样子。
这是我自己做的,但我不确定是否正确
appenders = console
appender.console.type = Console
appender.console.name = STDOUT
appender.console.threshold=DEBUG
appender.console.layout.type=PatternLayout
appender.console.layout.pattern=%d %-5p %-30c - %m%n
Log4j2 的属性格式不是最流行的格式。您可以查看 this answer 了解此格式背后的逻辑。
您的配置缺少记录器的配置:
appender.1.type=Console
appender.1.name=STDOUT
appender.1.target=SYSTEM_OUT
appender.1.layout.type=PatternLayout
appender.1.layout.pattern=%d %-5p %-30c - %m%n
rootLogger.level=DEBUG
rootLogger.appenderRef.1.ref=STDOUT
rootLogger.appenderRef.1.level=DEBUG
logger.1.name=org.apache.velocity
logger.1.level=WARN
另请注意,appender 的阈值通常配置在 AppenderRef
(参见 this question)。
我个人觉得 XML 格式更容易理解:
<Configuration xmlns="http://logging.apache.org/log4j/2.0/config">
<Appenders>
<Console
name="Console"
target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p %-30c - %m%n" />
</Console>
</Appenders>
<Loggers>
<Root level="DEBUG">
<AppenderRef
ref="Console"
level="DEBUG" />
</Root>
<Logger
name="org.apache.velocity"
level="WARN" />
</Loggers>
</Configuration>