简单的记录器,怎么样?

And*_*anu 1 java logging

我想为我的应用程序编写一个默认的Logger.目前我使用的是默认的Java API类记录器.

我想知道是否可以格式化我的日志看起来像这样:

[level] [dd:MM:YYYY] [hh:mm:ss] message
Run Code Online (Sandbox Code Playgroud)

记录器还应该能够将消息打印到System.out和文件中吗?我应该在哪里寻找这个功能?你能给我一些代码片段吗?

小智 6

扩展java.util.logging.Formatter,覆盖格式(LogRecord record)方法.LogRecord包含构建自定义消息所需的所有数据.

然后将属性java.util.logging.ConsoleHandler.formatter/java.util.logging.FileHandler.formatter中的logging.properties文件中的标准SimpleFormatter更改为格式化程序.


小智 5

你考虑过使用Log4j吗?

如果这不是您的选项,您可以更改当前使用的记录器的输出格式.在下面的文章显示了一个办法只有做到这一点,并为java.util.logging的API自定义格式.

我还应该提一下,除非这样做是为了学习和扩展你的知识,或者因为丑陋的环境而被迫,所以编写自己的记录器实现绝不是一个好主意.