我正在使用log4j2(版本2.10.0)和IBM Websphere 8.5.5.12。 问题是我的log4j2.properties中的Websphere环境变量没有得到解决。我尝试了一些类似的东西
property.filename = $${sys:Test}/Test.log
property.filename = ${env:Test}/Test.log
但无论我尝试什么,它都没有解决“测试”。谁可以帮我这个?
如果您在JVM可访问的适当资源范围内创建了变量,则可以通过添加与Websphere环境变量和值相同的JVM自定义属性来修复此问题,如下所示:
Steps : In WAS Admin console, Go to
WebSphere application servers >
Server_name >
Java and Process Management (under Server Infrastructure)>
Process definition >
Java Virtual Machine (under Additional Properties)>
Custom properties
Click on New and enter below details :
Name : Test
Value : ${Test}
Apply and save the changes.
重启JVM并重新测试!
编辑:如下面的评论中所述,在添加JVM自定义属性后,可以从log4j文件直接访问该变量,如下所示:
property.filename = ${Test}/Test.log