我想要一个log4j配置,使日志文件名应该像$ {System-name} log.log一样。即如果应用程序在任何系统上启动,则无需更改配置文件或代码。它应该生成所提到的日志文件名。 感谢。
答案 0 :(得分:2)
我是这样做的:
1)init logger by:
System.setProperty("my.logsDir", vcsLogsDir);
DOMConfigurator.configure("c:/log4j.xml");
2)在log4j.xml中我使用变量:
<param name="File" value="${my.logsDir}Default.log"/>d
答案 1 :(得分:2)
您可以使用${property}
语法的Java系统属性。默认情况下定义了许多系统属性,包括
"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)
添加自己的属性。