Sto eseguendo Spring framework 3.2.2.RELEASE su WildFly 8.0. Sto cercando di ottenere il logging al lavoro. Ho provato a leggere diverse esercitazioni, ma non riesco a ottenere alcun output sulla console o sul log. Sto osservando la console in Eclipse e il log su wildfly/standalone/log/server.log. È gradito qualsiasi aiuto per ottenere il logging in corso.Eclipse, Spring, Wildfly log4j logging
Ecco alcuni pezzi di codice interessante:
src/main/risorse/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/configurazione/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/pacchetto/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 ");
}
}
SOLUZIONE: Sulla base di risposta di Jame sotto, Per risolvere questo problema in base alla mia messa a punto sopra, ho aggiunto il seguente alla wildfly di standalone.xml, e la registrazione funziona come previsto:
<subsystem xmlns="urn:jboss:domain:logging:2.0">
<use-deployment-logging-config value="false"/>
Non sono bloccato su log4j. Come registro non è importante, solo la possibilità di accedere è ciò che sto cercando. Sono nuovo di Primavera e Jboss/Wildfly. C'è un modo migliore/preferito per fare il login in questo ambiente? –
IMO è preferibile utilizzare una facciata di registrazione come JBoss Logging o SLF4J. log4j è un gestore log completo che in genere non è necessario in un contenitore poiché il contenitore deve controllare la registrazione. –