简单的记录器,怎么样?

时间:2010-05-19 12:17:27

标签: java logging

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

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

[level] [dd:MM:YYYY] [hh:mm:ss] message

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

3 个答案:

答案 0 :(得分:6)

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

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

答案 1 :(得分:5)

您是否考虑过使用Log4j

如果您不能选择此选项,则可以更改当前使用的记录器的输出格式。 following article显示了一种方法,可以为java.util.logging API提供自定义格式化程序。

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

答案 2 :(得分:1)

检查此问题。我想我问过类似的问题。

A simple log file format

修改

正如我在那里写的那样,我找到了一个名为LogExpert的工具。您可以使用“level; dd:MM:YYYY; hh:mm:ss; message”等格式写入文件,并使用此工具查看它,将分类器变为 CSV