Wildfly记录到文件问题

时间:2015-03-10 14:55:35

标签: java logging log4j wildfly

我使用Wildfly,JSF,Spring,Hibernate并尝试在我的应用程序中配置日志记录。记录到控制台工作正常,但记录到文件仍然有效。我做错了什么?

的log4j.xml

<?xml version='1.0' encoding='ISO-8859-1' ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration>

  <appender name="LOG-ALL-APPENDER" class="org.apache.log4j.RollingFileAppender">
        <param name="append" value="false"/>
        <param name="file" value="all.log"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{ISO8601} [%5p] %c %m at %l%n"/>
        </layout>
  </appender>


  <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
        <param name="target" value="System.out"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{ISO8601} [%5p] %m at %l%n"/>
        </layout>
  </appender>

  <root>
    <level value="INFO"/>
    <appender-ref ref="LOG-ALL-APPENDER"/>
    <appender-ref ref="CONSOLE"/>
  </root>

</log4j:configuration>

的JBoss部署-structure.xml

<jboss-deployment-structure>
    <deployment>
        <exclude-subsystems>
            <subsystem name="org.apache.log4j" />
        </exclude-subsystems>
    </deployment>
</jboss-deployment-structure>

文件all.log始终为空。

1 个答案:

答案 0 :(得分:0)

jboss-deployment-structure.xml不正确。没有org.apache.log4j子系统。如果您尝试排除日志记录子系统,则需要使用logging作为子系统名称。

查看per-logging deployment文档。我建议你不要使用控制台appender。在关机期间可能会导致deadlocks

请注意,如果您使用按日志记录部署配置或排除日志记录子系统,则不会在all.log中看到服务器日志记录。