我已经创建了java程序,它将处理进入特定文件夹的不同文件。在我的程序中,我需要为每个传入文件创建日志文件,以记录该文件的异常。我为此使用了以下代码。我面临的问题是第一个文件它创建日志文件和日志记录异常。当第二个文件出现时,它会创建单独的日志文件并记录第二个文件的异常,同时它将第二个文件的异常与第一个文件的异常一起记录在第一个文件的日志文件中。我不希望将第二个文件的异常附加到第一个文件的日志文件中。如何做到这一点?
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);
最佳答案
当您为新文件添加附加程序时,您需要使用removeAppender 删除早期文件的附加程序。简而言之,一旦第一个文件的处理完成,请删除附加程序。
关于java - log4j API中FileAppender的疑问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/510254/