Probabilmente si desidera utilizzare uno DailyRollingFileAppender. Ad esempio, per rollarli ogni ora, utilizzi un DatePattern di '.'yyyy-MM-dd-HH
. Per un file log4j.properties:
log4j.appender.myAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.myAppender.DatePattern='.'yyyy-MM-dd-HH
...
O per la configurazione programmatica:
DailyRollingFileAppender appender = new DailyRollingFileAppender();
appender.setDatePattern("'.'yyyy-MM-dd-HH");
Logger root = Logger.getRootLogger();
root.addAppender(appender);
Purtroppo, utilizzando un DailyRollingFileAppender significa che non è possibile limitare la dimensione del file - questo potrebbe essere problematico se avete tonnellate di tronchi nel periodo di rotolamento dato.
Per comprimere dare un'occhiata a: compress-log4j-files
bene, vuoi dire che la combinazione di DailyRollingFileAppender con TimeBasedRollingPolicy (value = "logs/appname% d {yyyy-MM-dd} .zip."), Sarà in grado di raccogliere tutti quei 24 file al giorno e imballarli in un unico archivio zip? – Alec
scusa idk, devi provarlo – Khinsu