Sto scrivendo un piccolo livello di trasformazione xml in Java. Ricevo xml tramite il servizio web, lo modifica e quindi invio il xml modificato a un altro sistema. Quindi attendo una risposta e restituisco la risposta al chiamante originale.Log4J RollingFileAppender Impossibile eseguire il roll file
System A -> Me -> System B -> Me -> System A
voglio registrare la richiesta che ricevo, la richiesta di invio, la risposta che ricevo, e la richiesta di invio. Fondamentalmente voglio registrare l'xml in cui ogni freccia è nel mio diagramma.
Il mio problema è con il RollingFileAppender. Provo a rotolare a 10 MB, a volte lo fa e a volte non rotola. Se rotola un paio di volte, e poi si ferma, continuerà a rinominare i file da 3 a 4 e da 4 a 5 e così via.
La mia ipotesi migliore è che quando il segno di 10 MB viene attraversato, ci sono più thread che scrivono nel file di registro in modo che il file non possa essere rinominato. Spero che Log4J abbia una soluzione semplice per questo, ma se necessario, sono aperto a passare a un nuovo framework di registrazione. Grazie in anticipo per qualsiasi aiuto.
MODIFICA Ecco il file delle proprietà.
log4j.rootLogger=DEBUG, fileOut
log4j.appender.fileOut=org.apache.log4j.RollingFileAppender
log4j.appender.fileOut.File=/logs/log.log
log4j.appender.fileOut.layout=org.apache.log4j.PatternLayout
log4j.appender.fileOut.layout.ConversionPattern=%d %-5p %c - %m%n
log4j.appender.fileOut.MaxFileSize=10MB
log4j.appender.fileOut.MaxBackupIndex=10
log4j.appender.fileOut.append=true
EDIT 2 Questo è essenzialmente un urto, poiché questo post ha un basso numero di visualizzazioni. Credo che questo non possa essere un problema unico. Ogni aiuto è molto apprezzato. Grazie!
Grazie per la spiegazione dettagliata. Vedo cosa ho fatto di sbagliato e come evitarlo in futuro. Sapevo che non poteva essere colpa di Log4J! – Joe
@Joe se è di qualche aiuto, anch'io sapevo che non poteva essere colpa di Log4J ... – Isaac
@Isaac puoi dirmi quali "parametri JVM dovrei aggiungere questa riga' -Dlog4j.debug = true' ? –