2012-11-16 18 views
6

Viene visualizzato questo errore "log4j: ERRORE Impossibile rinominare" nel registro del server Tomcat. Ho più DailyRollingFileAppender nel mio XML log4j. E ogni appender punta a file diversi. È in esecuzione solo una volta l'istanza dell'applicazione. Ho usato utility maniglia ed eseguire il comando (con il nome del file di registro come parametro)log4j: ERRORE Impossibile rinominare

maniglia -f AMS-app.log e il risultato è Tomcat7.exe PID: 5032 Tipo: 54C file: E: \ apps \ ams \ logs \ ams-app.log

Da ciò presumo che sia presente un solo blocco nel file. Ambiente personale Windows Server 2008, tomcat 7.0 e Java 6 e slf4j-log4j12 (1.5.6)

Questo problema non si verificava quando la stessa applicazione era ospitata sul server AIX. Ho cercato su Google questo problema e sembra essere Windows specfic. Anche io non sono desideroso di usare DatedFileAppenders o qualsiasi log4j biforcuto. Il logback risolve tali problemi. Qualche suggerimento su come risolvere questo problema è apprezzato. Grazie

qui il mio log4j xml

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> 
<appender name="CONSOLE_APPENDER" class="org.apache.log4j.ConsoleAppender"> 
    <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler"/> 
    <param name="Target" value="System.out"/> 
    <param name="Threshold" value="DEBUG"/> 
    <layout class="org.apache.log4j.PatternLayout">  
     <param name="ConversionPattern" value="%n %d{yyyy/MM/dd HH:mm:ss} %-5p %x %M(%F:%L) - %m %n"/> 
    </layout> 
</appender> 

<appender name="APP_APPENDER" class="org.apache.log4j.DailyRollingFileAppender"> 
    <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler"/> 
    <param name="datePattern" value="yyyy-MM-dd"/> 
    <param name="file" value="E:/apps/ams/logs/ams-app.log"/> 
    <param name="append" value="true"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%n %d{yyyy/MM/dd HH:mm:ss} %-5p %x %M(%F:%L) - %m %n"/> 
    </layout>   
</appender> 

<appender name="SQL_APPENDER" class="org.apache.log4j.DailyRollingFileAppender"> 
    <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler"/> 
    <param name="datePattern" value="yyyy-MM-dd"/> 
    <param name="file" value="E:/apps/ams/logs/ams-sql.log"/> 
    <param name="append" value="true"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%n %d{yyyy/MM/dd HH:mm:ss} %-5p %x %M(%F:%L) - %m %n"/> 
    </layout> 
</appender> 

<appender name="Quartz_APPENDER" class="org.apache.log4j.DailyRollingFileAppender"> 
    <errorHandler class="org.apache.log4j.helpers.OnlyOnceErrorHandler"/> 
    <param name="datePattern" value="yyyy-MM-dd"/> 
    <param name="file" value="E:/apps/ams/logs/ams-Quartz.log"/> 
    <param name="append" value="true"/> 
    <layout class="org.apache.log4j.PatternLayout"> 
     <param name="ConversionPattern" value="%n %d{yyyy/MM/dd HH:mm:ss} %-5p %x %M(%F:%L) - %m %n"/> 
    </layout> 
</appender> 


<logger name="org.springframework"><level value="WARN"/></logger> 
<logger name="flex.messaging.log.ServletLogTarget"><level value="WARN" /></logger> 
<logger name="net.sf.jasperreports"><level value="WARN" /></logger> 
<logger name="net.sf.jasperreports.engine.fill"><level value="WARN" /></logger> 
<logger name="org.apache.commons.beanutils"><level value="WARN" /></logger> 
<logger name="jdbc.sqltiming" additivity="false"><level value="DEBUG"/><appender-ref ref="SQL_APPENDER"/></logger> 
<logger name="org.quartz" additivity="false"><level value="WARN" /><appender-ref ref="Quartz_APPENDER"/></logger> 
<logger name="org.quartz.SchedulerException"><level value="ERROR" /><appender-ref ref="MAIL_APPENDER"/></logger>  
<logger name="org.hmil.ams.BatchDAO" additivity="false"><level value="INFO"/><appender-ref ref="Quartz_APPENDER"/></logger> 
<root>  
    <priority value="debug"></priority> 
    <appender-ref ref="APP_APPENDER" />  
    <appender-ref ref="CONSOLE_APPENDER"/> 
</root> 

+1

Potete trasmetterci inviare la configurazione log4j? –

risposta

0

ho avuto lo stesso problema e riparato aggiornando alla versione 1.2.15 log4j secondo this discussion

+0

Usiamo log4j 1.2.15 ma abbiamo ancora lo stesso problema con quella versione. –

+1

Ho trovato la soluzione al mio problema e volevo condividere qui. Quando si aggiunge l'appender-ref nel tag del logger, si genera un errore di ridenominazione. Quando aggiungi l'appender-ref nel tag radice, non genera mai quell'errore. –