Хотел бы изменить имя файла журнала при каждом событии через log4j.properties и в основном. На C:/
я должен получить три выходных файла: 0.log
, 1.log
и 2.log
. Однако в итоге я получил только файл .log
с 0 1 2
.
log4j.rootLogger= OFF
log4j.appender.Localtest=org.apache.log4j.RollingFileAppender
log4j.appender.Localtest.File=C:/${logFile}.log #tried '${env:logFile}' and ${sys:logFile}' didn't work
log4j.appender.Localtest.layout=org.apache.log4j.PatternLayout
log4j.category.Localtest=INFO, Localtest
log4j.additivity.Localtest=false
package localtest;
import org.apache.log4j.*;
public class Localtest {
static Logger Localtest = Logger.getLogger("Localtest");
public static void main(String[] args){
for(int i=0;i<3;i++){
String logNum = i+"";
System.setProperty("logFile", logNum);
Localtest.info(i); //every ith log file should contain the i
}
}
}
мог бы использовать метод для экспорта и переименования его до начала следующей итерации. Но хотел бы попробовать log4j.