我有问题。 Log4j不希望写入控制台并在路径中使用系统变量进行归档。仅使用简单路径写入文件。 配置我的log4j。
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p: %c - %m%n" />
</layout>
</appender>
<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">
<!-- <param name="file" value="d:/lv-098_JAVA/logs/log.log" /> -->
<param name="file" value="${LV098_JAVA}/src/main/resources/logs/log.log" />
<param name="DatePattern" value="'.'yyyy-MM-dd" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p (%F:%L:%M) %c{1} %m%n" />
</layout>
<!-- Root Logger -->
<root>
<priority value="info" />
<appender-ref ref="file1" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
答案 0 :(得分:0)
我发现了问题所在。它在Jboss中,因为jboss有自己的记录器,它不允许写入控制台。您必须更改Jboss记录器的配置。但我不知道为什么它不允许使用系统变量。
答案 1 :(得分:0)
你宣布
appender name="file" class="org.apache.log4j.DailyRollingFileAppender"
并在root标签中编写
appender-ref ref="file1"
因为没有file1
。由于这个log4j不适合你。