Сомневаюсь в FileAppender в API log4j - PullRequest
0 голосов
/ 04 февраля 2009

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

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);

1 Ответ

5 голосов
/ 04 февраля 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...