Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用java.util.Formatter作为slf4j的默认格式化程序_Java_Logging_Slf4j_Formatter - Fatal编程技术网

使用java.util.Formatter作为slf4j的默认格式化程序

使用java.util.Formatter作为slf4j的默认格式化程序,java,logging,slf4j,formatter,Java,Logging,Slf4j,Formatter,我目前有一个自定义日志管理器,它在内部使用java.util.Formatter。主要的问题是它不是很有用:每个应用程序都在一个文件中,无法在数据库中添加特定日志,无法发送邮件 因此,我希望能够提高我们的日志系统的功能。经过几次测试,Log4J正是我现在需要的。但是我想避免以后再次修改这个的痛苦,所以我计划在Log4J之上使用slf4j 即使我已经准备好在所有代码库中进行大规模搜索/替换以使用slf4j,我也不准备检查每个日志语句并将其重新格式化以使用slf4j的{}格式 所以我的问题是:我如何

我目前有一个自定义日志管理器,它在内部使用
java.util.Formatter
。主要的问题是它不是很有用:每个应用程序都在一个文件中,无法在数据库中添加特定日志,无法发送邮件

因此,我希望能够提高我们的日志系统的功能。经过几次测试,Log4J正是我现在需要的。但是我想避免以后再次修改这个的痛苦,所以我计划在Log4J之上使用slf4j

即使我已经准备好在所有代码库中进行大规模搜索/替换以使用slf4j,我也不准备检查每个日志语句并将其重新格式化以使用slf4j的
{}
格式

所以我的问题是:我如何使用slf4j接口并告诉它在内部应该使用
java.util.Formatter
而不是默认的,最好是在一个地方(不是在每个类或包中)

注意:所有谈论性能或声明我不应该使用j.u.Formatter的答案都将被丢弃:我需要一个实用的解决方案来解决我的问题,而不是发起辩论。

有一个补丁可以修改以满足您的需要。
这里的讨论还可以进一步说明如何使用util.Formatter。

这确实可能会有所帮助,但不是有更简单的解决方案吗?嗯……您想让别人为您编写吗:)。。。试着像他们在Slfj XLOGER中那样扩展它。希望这有帮助,正如人们所说:一个好的程序员是一个懒惰的开发人员:)说真的,如果已经有了一个直接的解决方案,我宁愿接受它。我有点不愿意维护slf4j的本地版本,只做一两个更改,但如果需要,我会做的。看起来没有其他答案了。所以我接受你的。谢谢:-)