我想创建一个自定义记录器(用于Minecraft插件)来记录重要事件。我还希望记录器在性能方面有所提高。
执行此操作的适当方法是什么。我所举的一个例子就是我的世界日志文件和我读过的一堆教程。但是,除了mc logger之外,它们似乎都效率低下或存在其他缺点。
所以我的问题是:
“创建实时记录器并实时记录到文件的最佳/转到/最有效的方法是什么?
这是我发现的一些方法:
FileHandler()
的Java Logger作为记录器的处理程序(这将创建一个讨厌的.lck文件,这将使该日志文件不可用。FileHandler()
->将其添加到记录器->编写消息->从记录器中将其作为处理程序删除->关闭FileHandler。 (就性能而言,这似乎超级慢)public void info(String message) {
try {
this.logFile = new FileHandler("logs" + File.separator + fileName + ".log", true);
this.logFile.setFormatter(new SimpleFormatter());
} catch (IOException e) {
e.printStackTrace();
}
this.logger.addHandler(this.logFile);
this.logger.info(message);
this.logger.removeHandler(this.logFile);
this.logFile.close();
}