我的Java应用程序使用SLF4J
我已配置使用SimpleLogger
实现并将日志消息重定向到文件。这很好。
如何随后更改日志文件的名称?
我尝试更改LOG_FILE_KEY
属性,但似乎没有效果。日志消息继续输出到原始日志文件。
这就是我所做的:
System.setProperty(org.slf4j.impl.SimpleLogger.LOG_FILE_KEY, Paths.get("new-filename.txt").toString());
答案 0 :(得分:0)
我想我在this answer的帮助下找出了答案,并查看了org.slf4j.impl.SimpleLogger
的源代码。
答案是您无法创建新的日志文件,因为记录器属性仅加载一次 - 构建第一个记录器实例时。后续记录器将使用与第一个相同的属性。
答案 1 :(得分:0)
要根据自己的喜好设置文件路径,只需在类路径上名为simplelogger.properties
的文件中设置以下属性(例如,将此类文件放在资源目录下)或通过{ {1}} JVM启动选项。
属性名称和语法很简单:
-D
有关通过上述两种方法之一提供财产的示例,请参阅in this related answer。