Eclipse,Spring,Wildfly log4j日志记录

时间:2014-05-03 01:04:19

标签: java spring wildfly

我在WildFly 8.0上运行Spring framework 3.2.2.RELEASE。我正在尝试登录工作。我曾尝试阅读几个教程,但是,似乎无法获得任何输出到控制台或日志。我正在查看Eclipse中的控制台,以及wildfly / standalone / log / server.log中的日志。任何帮助记录日志的人都表示赞赏。

以下是一些有趣的代码:

的src /主/资源/的log4j.xml:

<!-- Appenders -->
<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>

<!-- Application Loggers -->
<logger name="com.myCompany.myPackage">
    <level value="info" />
</logger>
    <!-- 3rdparty Loggers 
         omitted
    -->
<!-- Root Logger -->
<root>
    <priority value="warn" />
    <appender-ref ref="console" />
</root>

wildfly /独立/配置/ standalone.xml:

        <subsystem xmlns="urn:jboss:domain:logging:2.0">
            <console-handler name="CONSOLE">
                <level name="INFO"/>
                <formatter>
                    <named-formatter name="COLOR-PATTERN"/>
                </formatter>
            </console-handler>
            <periodic-rotating-file-handler name="FILE" autoflush="true">
                <formatter>
                    <named-formatter name="PATTERN"/>
                </formatter>
                <file relative-to="jboss.server.log.dir" path="server.log"/>
                <suffix value=".yyyy-MM-dd"/>
                <append value="true"/>
            </periodic-rotating-file-handler>
            <logger category="com.arjuna">
                <level name="WARN"/>
            </logger>
            <logger category="org.apache.tomcat.util.modeler">
                <level name="WARN"/>
            </logger>
            <logger category="org.jboss.as.config">
                <level name="DEBUG"/>
            </logger>
            <logger category="sun.rmi">
                <level name="WARN"/>
            </logger>
            <logger category="jacorb">
                <level name="WARN"/>
            </logger>
            <logger category="jacorb.config">
                <level name="ERROR"/>
            </logger>
            <root-logger>
                <level name="INFO"/>
                <handlers>
                    <handler name="CONSOLE"/>
                    <handler name="FILE"/>
                </handlers>
            </root-logger>
            <formatter name="PATTERN">
                <pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c
] (%t) %s%E%n"/>
            </formatter>
            <formatter name="COLOR-PATTERN">
                <pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c]
(%t) %s%E%n"/>
            </formatter>
        </subsystem>

的src / COM / myCompany的/ mypackage的/ mySubpackage / myClass.java

package com.myCompany.myPackage.mySubpackage;

import org.apache.log4j.Logger;

public class myClass
{
   private static final Logger log = Logger.getLogger(myClass.class.getName());

   public SoccerFeed someMethod()
   {
      log.info("******************* someMethod ");
   }
}

解: 基于下面的Jame的回答,为了根据我上面的设置修复此问题,我将以下内容添加到wildFly的standalone.xml中,并且日志记录按预期工作:

<subsystem xmlns="urn:jboss:domain:logging:2.0">
    <use-deployment-logging-config value="false"/>

1 个答案:

答案 0 :(得分:12)

我不确定Spring如何配置日志记录,但我认为它与log4j有关。您可能需要停用use-deployment-logging-configfalse。这只会为您的部署配置日志记录。

您也可以将log4j.xml配置文件保留在部署之外,并使用日志记录子系统配置日志记录。