java.util.log,使用3个不同的记录器实例/日志文件,获取.1.2等

java.util.log,使用3个不同的记录器实例/日志文件,获取.1.2等,java,Java,我试图弄清楚为什么要生成日志文件的多个版本(.1、.2等)。我的项目需要3个独立的记录器,我正在使用java.util.log并按如下方式设置记录器: logger = Logger.getLogger("Logger"); logger.addHandler(new FileHandler(logFileName)); statsLogger = Logger.getLogger("StatsLogger"); statsLogger.addHandler(new FileHandler(s

我试图弄清楚为什么要生成日志文件的多个版本(.1、.2等)。我的项目需要3个独立的记录器,我正在使用java.util.log并按如下方式设置记录器:

logger = Logger.getLogger("Logger");
logger.addHandler(new FileHandler(logFileName));
statsLogger  = Logger.getLogger("StatsLogger");
statsLogger.addHandler(new FileHandler(statsLogFileName));
alarmLogger  = Logger.getLogger("AlarmLogger");
alarmLogger.addHandler(new FileHandler(alarmLogFileName));
我的日志属性文件:

handlers=java.util.logging.ConsoleHandler java.util.logging.FileHandler
java.util.logging.FileHandler.append=true
java.util.logging.FileHandler.level=INFO
java.util.logging.ConsoleHandler.level=INFO
java.util.logging.ConsoleHandler.formatter=com.package.LogFormatter
java.util.logging.FileHandler.formatter=com.package.LogFormatter
就我所知,这似乎有效。。。事情似乎被记录到了正确的日志文件中。你知道是什么导致了这一切吗


感谢您根据FileHandler javadoc提供的任何想法

通常“%u”唯一字段设置为0。然而,如果 FileHandler尝试打开文件名并发现该文件当前为 在被另一个进程使用时,它将递增唯一编号字段 然后再试一次。这将重复进行,直到FileHandler找到一个文件 当前未使用的名称。如果存在冲突且没有“%u” 字段已指定,它将添加到文件名末尾 一点之后。(这将在任何自动添加的生成之后进行。) 号码。)

您是否有多个正在运行的进程使用相同的日志配置?还要检查windows process viewer或top中是否没有显示任何旧的测试进程