Java Logger:创建旋转编号为.log作为后缀的文件
作者:互联网
我在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以使用模式.创建一个使用%g组件的模式.该组件将在运行时使用世代号替换,以区分旋转日志.
例
要将日志文件放在系统临时目录中,格式为%TEMP%/ mylog.1.log,请使用以下模式:
`"%t/mylog.%g.log"`
标签:java-util-logging,java,logging 来源: https://codeday.me/bug/20190825/1716951.html