2015-02-02 16 views
5

Ho un'applicazione JavaEE e la sto distribuendo su JBoss 6.1. Voglio usare Log4j.Log4j non si registra con JBoss 6.1

sono queste mie dipendenze:

<dependency> 
    <groupId>commons-logging</groupId> 
    <artifactId>commons-logging</artifactId> 
    <version>1.1.1</version> 
</dependency> 

<dependency> 
     <groupId>org.slf4j</groupId> 
    <artifactId>slf4j-log4j12</artifactId> 
    <version>1.5.10</version> 
</dependency> 

<dependency> 
    <groupId>log4j</groupId> 
    <artifactId>log4j</artifactId> 
    <version>1.2.16</version> 
</dependency> 

<dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>1.6.4</version> 
</dependency> 

Questo è il mio log4j.properties

log4j.rootLogger=info, stdout 

log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{${datestamp}} %5p: %c{2} - %m%n 

ho aggiunto questa linea sul standalone.conf

JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.as.logging.per-deployment=false" 

Questo è il mio JBoss -deployment-structure.xml

<?xml version="1.0" encoding="UTF-8"?> 

<jboss-deployment-structure> 
<deployment> 
    <exclusions> 
    <module name="org.apache.log4j" /> 
    <module name="org.apache.commons.logging" /> 
    <module name="org.slf4j" /> 
    <module name="org.slf4j.impl" /> 
    </exclusions> 
</deployment> 
</jboss-deployment-structure> 

Non riesco a vedere nessun registro sulla mia console. Qualche idea?

risposta

2

Assicurarsi che il $JAVA_OPTS sia di rango da qualche parte (per testarlo si potrebbe mettere direttamente nel copione standalone.sh poco prima l'inizializzazione.

Se il problema persiste, quindi aggiungere il -Dlog4j.configuration proprietà per specificare il percorso del file di registro di configurazione (assicuratevi di avere il permesso a destra).

JAVA_OPTS="$JAVA_OPTS -Dorg.jboss.as.logging.per-deployment=false -Dlog4j.configuration=file:$JBOSS_HOME/standalone/configuration/log4j.xml" 

Assicurati di configure the log4j.xml file.

Si noti che anche se si definiscono le proprietà nel file .conf, verranno interpretati nel file .sh in modo che siano in formato shell valido, il che significa che uno spazio dopo uno =, ad esempio, potrebbe essere la causa principale del problema.

+0

Sì, sembra promettente. Ci proverò quando tornerò dalle mie vacanze la prossima settimana, spero che sia OK per la taglia –

0

poiché si utilizza slf4j-log4j12, è necessario configurare anche per slf4j-log4j12, aggiungere le seguenti proprietà di logge.

log4j.rootLogger=DEBUG, STDOUT 
log4j.logger.deng=INFO 
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender 
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout 
log4j.appender.STDOUT.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n