2013-10-22 13 views
5

In questo pacchetto sono presenti il ​​pacchetto mypack e MyClass. Iwould qui il log solo livello INFO per questa classe e cercando di impostare utilizzando log4j.properties:Log4j impostazione del livello di registro per classe individuale

log4j.debug=true 
log4j.rootLogger=ALL, debugLogfile 
log4j.rootCategory=, debugLogFile 
#log4j.category.mypack =INFO 
log4j.logger.mypack =INFO 

    log4j.appender.debugLogfile=org.apache.log4j.RollingFileAppender 
    log4j.appender.debugLogfile.File=mylog.log 
    log4j.appender.debugLogfile.Threshold=ALL 
    log4j.appender.debugLogfile.MaxFileSize=100MB 
    log4j.appender.debugLogfile.MaxBackupIndex=4 
    log4j.appender.debugLogfile.layout=org.apache.log4j.PatternLayout 
    log4j.appender.debugLogfile.layout.ConversionPattern=%d %-4r [%t] %-5p %c %x - %m%n 

Purtroppo classe tronchi livello di debug anche. Che c'è?

Creare il logger in questo modo: log di registrazione pubblico finale = Logger.getLogger (getClass());

risposta

2

Quello che vi serve è quello di impostare packagelogger accesso al Category o Logger livello, per raggiungere questo provare seguente:

# make default and debugLogFile both as root category 
log4j.rootCategory=, debugLogFile 

# set package wide logger Level (via Category, older way) 
log4j.category.mypack=INFO 

# OR set package wide logger Level (via Logger, newer way) 
log4j.logger.mypack=INFO 

# an example of turning all apache package logs to WARN 
log4j.category.org.apache=WARN 
+0

Ho aggiornato la mia domanda con la nuova configurazione, ma questo non ha aiutato. – vico

+0

rimuovi lo spazio 'mypack = INFO', non sei sicuro che gli spazi siano tagliati da' log4j', nella prima riga metti 'log4j.debug = true', quindi questo ti darà ulteriori dettagli di debug. Inoltre, come stai usando il logger? Suppongo che tu abbia un codice come "Logger logger = Logger.getLogger (" mypack ")' – harsh

0

Prova

log4j.rootLogger = DEBUG, stdoutdebugLogfile
log4j .logger.mypack = INFO

anziché

log4j.appender.debugLogfile.mypack = INFORMAZIONI

Per impostare il livello di debug per intero app e INFO per il pacchetto 'mypack'.

0

Per quanto mi ricordo è possibile specificare come questo

log4j.logger.com.proj.eqd.exo.http.filter = INFO

0

prova ad aggiungere questo:

log4j.logger.mypack =INFO, debugLogfile 
log4j.additivity.mypack = false 
log4j.rootLogger=ALL, debugLogfile 

La classe utilizza la configurazione per rootLogger e anche la sua. Aggiungendo il parametro di additività, lo eviterai.

Spero che aiuti.

6

Si può anche scegliere di utilizzare il file XML.

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE log4j:configuration PUBLIC 
"-//log4j/log4j Configuration//EN" "log4j.dtd" > 
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 

    <!-- console --> 
    <appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"> 
     <param name="threshold" value="ALL" /> 
     <layout class="org.apache.log4j.PatternLayout"> 
      <param name="conversionPattern" 
       value="%d{yyyyMMdd-HHmmss.SSS} %-5p (%c.java:%L).%M - %m%n" /> 
     </layout> 
    </appender> 

    <!-- categories --> 
    <category name="org.hibernate"> 
     <priority value="WARN" /> 
    </category> 
    <category name="org.hibernate.type"> 
     <priority value="TRACE" /> 
    </category> 
    <category name="mypack"> 
     <priority value="INFO" /> 
    </category> 

    <!-- root --> 
    <root> 
     <priority value="ALL" /> 
     <appender-ref ref="STDOUT" /> 
    </root> 
</log4j:configuration> 

Con le impostazioni, l'appender al file:

<!-- file --> 
<appender name="ROLLOUT" class="org.apache.log4j.RollingFileAppender"> 
    <param name="file" value="mylog.log" /> 
    <param name="maxFileSize" value="100MB" /> 
    <param name="maxBackupIndex" value="4" /> 
    <param name="threshold" value="ALL" /> 
    <param name="encoding" value="UTF-8" /> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="conversionPattern" value="%d %-4r [%t] %-5p %c %x - %m%n" /> 
    </layout> 
</appender> 

Vedi anche:

Problemi correlati