嗨,我是新手使用log4j
我正在尝试配置xml以使用和appender将日志记录发送到日志文件中,好吧,appender工作正常所以我想使用appender以便它每天清除日志文件,但是当它第一次创建时日志文件,它不会将任何日志消息写入由创建的文件中,所以我来这里得到一些建议
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="FATAL" >
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="${pattern}" />
</Console>
<RollingFile name="rollingfile" fileName="rolling.log"
filePattern="rolling-%d{MM-dd-yyyy}.log">
<PatternLayout pattern="${pattern}" />
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
<SizeBasedTriggeringPolicy size="10 MB" />
</Policies>
</RollingFile>
<File name="file" fileName="test2.log">
<PatternLayout pattern="${pattern}" />
</File>
</Appenders>
<Loggers>
<Root level="trace" >
<AppenderRef ref="Console" />
<AppenderRef ref="rollingfile" />
<AppenderRef ref="file" />
</Root>
</Loggers>
</Configuration>
答案 0 :(得分:0)
你有AppenderRef="rolling"
,但你的Appender被命名为“rollingfile”。这些需要匹配。
此外,log4j可能会发出警告,指出配置存在问题。我建议您在配置开头指定<Configuration status="WARN" >
而不是FATAL,以便您可以看到这些警告。
可能需要指定${sys:pattern}
来读取系统属性。而不是${pattern}
变量,首先尝试像%d %p [%t] %m%n
这样的显式模式。