从 log4j 迁移到 log4j2 - 包括类别的属性文件配置

Migrating from log4j to log4j2 - properties file configuration including categories

我有一个 java 应用程序正在使用配置如下的 log4j。

# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1
log4j.debug=false

# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p %c %x - %m%n
#log4j.appender.A1.threshold=DEBUG

# DEBUG, INFO, WARN, ERROR, FATAL
log4j.category.com.myorganization.MyClass=INFO
log4j.category.com.myorganization.MyOtherClass=WARN

我想迁移到与上面相同配置的log4j2。虽然我找到了很多文档,尤其是 none 示例包含类别配置,因为我在最后两行中有它。

谁能帮我看看我的 log4j2.properties 文件与上面的配置相同吗?

感谢 Piotr 的解释,我的问题的解决方案如下所示:

appenders=xyz

appender.xyz.type = Console
appender.xyz.name = myOutput
appender.xyz.layout.type = PatternLayout
appender.xyz.layout.pattern = [%d{yy-MMM-dd HH:mm:ss:SSS}] [%p] [%c:%L] - %m%n

rootLogger.level = debug
rootLogger.appenderRefs = abc
rootLogger.appenderRef.abc.ref = myOutput

logger.c1.name=com.myorganization.MyClass
logger.c1.level=INFO
logger.c2.name=com.myorganization.MyOtherClass
logger.c2.level=WARN

唯一的缺点似乎是记录器现在需要有名称(c1、c2,任何唯一的名称)。