Используя log4j для очистки файла?
Я использую log4j для записи в файл со следующим файлом свойств:
log4j.rootLogger=DEBUG, FA
#File Appender
log4j.appender.FA=org.apache.log4j.FileAppender
log4j.appender.FA.File=temp.ppr
log4j.appender.FA.layout=org.apache.log4j.PatternLayout
log4j.appender.FA.layout.ConversionPattern= %m%n
Моя проблема в том, что при каждом запуске моей программы я хочу очистить файл "temp.ppr", а затем эффективно записать в него файл lo4j? или вы рекомендуете другие решения?
Спасибо
3 ответа
Вы могли бы сделать это:
log4j.appender.FA=org.apache.log4j.RollingFileAppender
log4j.appender.FA.MaxBackupIndex=1
А затем в коде запуска приложения:
Logger.getRootLogger().getAppender("FA").rollOver()
Таким образом, при каждом запуске программы существующий журнал перемещается в "temp.ppr.1", а "temp.ppr" запускается новый. Таким образом, у вас всегда есть журнал предыдущего запуска.
Вы пробовали просто установить append
собственность на FileAppender
в false
?
log4j.appender.FA.append=false
Я бы посоветовал вам как часть вашего инструмента сборки (Apache Ant или Maven) позаботиться об удалении ненужного файла. В качестве альтернативы, если вы хотите сохранить резервную копию, вы можете использовать RollingFileAppender