你能在log4j.properties文件中使用env-var扩展吗,比如%APPDATA%



是否可以在log4j.properties文件中使用env-var扩展,如%APPDATA%

我需要将此文件作为应用程序的一部分进行部署,并在下面的行中指定一个特定于用户的文件夹,如%APPDATA%。这可能吗?

log4j.appender.A2.File=%APPDATA%/mylog.log

您不能直接引用环境变量,但可以引用Java"系统属性"

例如,启动应用程序时,在命令行上设置系统属性:

java -Dapp.data="%APPDATA%" ...

在log4j.properties文件中,引用您在命令行上设置的系统属性:

log4j.appender.A2.File=${app.data}/mylog.log

我在log4j2.xml配置文件中使用以下代码。

 <RollingFile name="FILE" fileName="${sys:user.home}/AppData/Roaming/MyApplication/MyApplication.log" filePattern="${sys:user.home}/AppData/Roaming/MyApplication/MyApplication.log-%d{yyyy-MM-dd}-%i.log">  

最新更新