我使用下面的代码根据我的要求创建一个自定义日志。
但无法获得回滚功能 java.util.logging.Logger
不支持。
我有哪些可行的方案可以实施?
是否可以使用同一个库自动生成回滚日志?
代码:
private static class MyCustomFormatterforUpdate extends java.util.logging.Formatter {
@Override
public String format(LogRecord record) {
StringBuffer sb = new StringBuffer();
sb.append("update ApiStatistics set RespDateTime =");
sb.append(record.getMessage());
sb.append(";");
sb.append("\n");
return sb.toString();
}
}
java.util.logging.Logger updatefile = java.util.logging.Logger.getLogger("Update Script");
boolean appendu = false;
FileHandler fhu;
{
try {
fhu = new FileHandler("src/main/resources/updatescript.log",appendu);
updatefile.addHandler(fhu);
fhu.setFormatter(new MyCustomFormatterforUpdate());
} catch (IOException e) {
e.printStackTrace();
}
}
2条答案
按热度按时间qc6wkl3g1#
在我前面的答案的基础上,您只需要构建在该答案中推断出的代理实现。其思想是安装一个代理处理程序,允许您打开和关闭filehandler对象。这就启用了所需的旋转。下面是一个工作示例,它将在日期更改时进行轮换。包含测试用例,默认情况下输出将显示在主文件夹中。
ao218c7q2#
一个建议是,请使用其他日志框架,其中有许多功能,而不是在他们
java.util.logging.Logger
有用的链接配置-log4j-for-creating-daily-rolling-log-files
log4j格式示例
java登录指南