Сомнение в FileAppender в API log4j

Я создал java-программу, которая будет обрабатывать разные файлы, поступающие в определенную папку. В моей программе мне нужно создать файл журнала для каждого входящего файла для регистрации исключения для этого файла. Для этого я использовал приведенный ниже код. Проблема, с которой я сталкиваюсь, заключается в том, что для 1-го файла создается файл журнала и исключение регистрации. Когда приходит второй файл, он создает отдельный файл журнала и регистрирует исключение второго файла, а тем временем он регистрирует исключение второго файла вместе с исключением первого файла в файле журнала первого файла. Я не хочу, чтобы исключение второго файла добавлялось в файл журнала первого файла. Как это сделать?

private Appender myAppender;
private Logger logger = Logger.getLogger(ConfigFileReader.class.getName());

//filename is dynamic based on the incoming file
myAppender = new FileAppender(new AppXMLLayout(),filename+".log",true);
logger.addAppender(myAppender);

person raja    schedule 04.02.2009    source источник


Ответы (1)


Когда вы добавляете приложение для нового файла, вам нужно удалить приложение для более раннего файла с помощью removeAppender. Короче говоря, как только ваша обработка первого файла завершится, удалите приложение.

person Bhushan Bhangale    schedule 04.02.2009