我在使用Log4J(版本2.13.0)时遇到问题,出现以下问题:
log4j.properties
文件是否已正确配置,或者甚至无法识别。这是我的log4j.properties
文件:
status = trace
dest = out
name = PropertyConfiguration
property.filename = logs/log%d{yyyy-MM-dd HH:mm:ss}.log
property.pattern = %d{yyyy-MM-dd HH:mm:ss} | [%-5p] %c{1}:%L: %m%n
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = ${pattern}
appender.rolling.type = RollingFile
appender.rolling.name = RollingFile
appender.fileName = ${filename}
appender.rolling.filePattern = logs/log-%d{MM-dd-yyyy-HH-mm-ss}.log
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = ${pattern}
appender.rolling.policies.type = Policies
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling.policies.time.interval = 2
appender.rolling.policies.time.modulate = true
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.max = 5
logger.rolling.name = me.tecc
logger.rolling.level = trace
logger.rolling.additivity = false
logger.rolling.appenderRef.rolling.ref = RollingFile
rootLogger.level = trace
rootLogger.appenderRef.stdout.ref = STDOUT
任何帮助将不胜感激。谢谢!
答案 0 :(得分:1)
Log4J没有使用我指定的模式,也没有允许我记录任何跟踪/调试/信息/警告消息。
与之前的Log4J 1.x不同,Log4J 2不支持 最初通过属性文件进行配置 已发布。来自 Log4J 2.4 的属性支持 再次添加了文件,但语法完全不同
我看到您的Log4j版本为2.13,低于2.4 ,因此它将无法正常工作。
请注意:
PropertyConfigurator
(log4j.properties)无法处理DOMConfigurator
(log4j.xml)支持的高级配置功能,例如支持自定义ErrorHandler,嵌套的附加程序(例如AsyncAppender)等。< / p>
答案 1 :(得分:0)
appender.fileName = $ {文件名}
您错过了此配置中的“滚动”部分。如下更改后重试
appender.rolling.fileName = ${filename}