我想改变日志的外观(java.util.logging.Logger),我发现了这个:
System.setProperty("java.util.logging.SimpleFormatter.format","[%1$tF %1$tT] [%4$-7s] %5$s %n");
所以我的日志条目现在看起来像这样:
[2017-08-24 15:55:40] [INFORMATION] Hello World!
我想将格式设置为以下内容:
[24.08.2017 15:55:40]
我已经尝试了这么久,不应该那么难。有人可以帮我或给我一些好的和简单的文件/例子吗?
答案 0 :(得分:3)
来自文档Class Formatter
而不是:
[%1$tF %1$tT]
您可以使用:
[%1$te.%1$tm.%1$tY %1$tT]
您可以在此示例中看到结果:
Calendar c = Calendar.getInstance();
String example = String.format("[%1$te.%1$tm.%1$tY %1$tT]", c);
System.out.println(example);
输出
[24.08.2017 15:19:30]
答案 1 :(得分:1)
我一直在努力,不应该那么难。
SimpleFormatter.format is a static property that is set at class loading time.如果在加载java.util.logging.SimpleFormatter
类之前完成,则只能使用System.setProperty来更改格式。相反,您应修改logging.properties
或修改启动脚本以在JVM启动期间设置属性。
如果格式中存在错误,则行为只是使用默认格式。这使得调试变得困难,因为你无法区分错误或者没有正确设置属性。
最好的办法是使用YCF_L
之类的测试程序,然后将格式应用于启动脚本。