java – 使用log4j在mule中自定义日志文件名

我正在尝试通过修改log4j.xml以使用适当的appender来更改mule生成的日志文件名.

这是log4j.xml的一个片段

 <RollingFile name="Rolling-Async-Perf" fileName="/usr/local/mule/logs/${app_name}.log"
            filePattern="./logs/${date:yyyy-MM}/perf-%d{yyyy-MM-dd}-%i.log.gz"  immediateFlush="false">

以下是我在加载与log4j.xml相关的属性的类中设置application_name的值的方法

System.setProperty("app_name", "AppName");

但是,生成的文件名为${app_name} .log而不是AppName.log.

有关如何根据mule中的自定义属性获取mule来获取文件名称的任何想法?

解决方法:

有两种选择:

1)在MULE_HOME / conf / wrapper.conf文件中添加一个属性,例如:

wrapper.java.additional.15=-Dapp_name=AppName

或2)在log4j2.xml文件example here的Configuration元素内:

<Properties>
  <Property name="app_name">AppName</Property>
</Properties>
上一篇:通过Spring Log4jConfigurer初始化log4j2


下一篇:java – log4j2.properties将记录器级别设置为许多包