我正在使用 java.util.logging 包中的 Java Logger。这就是我当前创建记录器的方式:
FileHandler fileHandler = new FileHandler(filePath, 5242880, 5, true);
fileHandler.setFormatter(new java.util.logging.Formatter() {
@Override
public String format(LogRecord logRecord) {
if(logRecord.getLevel() == Level.INFO) {
return "[INFO " + createDateTimeLog() + "] " + logRecord.getMessage() + "\r\n";
} else if(logRecord.getLevel() == Level.WARNING) {
return "[WARN " + createDateTimeLog() + "] " + logRecord.getMessage() + "\r\n";
} else if(logRecord.getLevel() == Level.SEVERE) {
return "[ERROR " + createDateTimeLog() + "] " + logRecord.getMessage() + "\r\n";
} else {
return "[OTHER " + createDateTimeLog() + "] " + logRecord.getMessage() + "\r\n";
}
}
});
logger.addHandler(fileHandler)
现在,当我的记录器记录时,它会创建一个扩展名为 .0、.1、.2(等)的文件。我更喜欢说 .0.log、.1.log(等等)。我找不到在哪里可以设置这个。任何想法/帮助都会很棒。
当你构建你的fileHandler
对象、修改filePath
使用一个pattern。创建一个pattern这利用了%g
成分。该组件将在运行时替换为生成编号以区分轮换日志。
Example
使用 form 将日志文件放置在系统临时目录中%TEMP%/mylog.1.log
,使用以下模式:
`"%t/mylog.%g.log"`
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)