如何动态更改log4j日志文件?
我想要一个log4j配置,使日志文件名应该像$ {System-name} log.log一样。 即如果应用程序在任何系统上启动,则无需更改配置文件或代码。 它应该生成所提到的日志文件名。 谢谢。
我是这样做的:
1)init logger by:
System.setProperty("my.logsDir", vcsLogsDir); DOMConfigurator.configure("c:/log4j.xml");
2)在log4j.xml中我使用变量:
d
您可以将Java系统属性与${property}
语法一起使用。 默认情况下定义了许多系统属性,包括
"os.arch" Operating system architecture "os.name" Operating system name "os.version" Operating system version
有关默认属性的完整列表,请参阅System的 API或使用System.getProperties().list(System.out)
列出它们。
如果默认属性不起作用,那么您将使用System.setProperty(property, value)
添加自己的属性。