2015-08-25 25 views
3

我试图通过修改log4j.xml来更改日志文件名以具有适当的appender。如何根据系统属性设置RollingAppender自定义文件名

下面是从log4j.xml

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

片段下面是如何设置的application_name

System.setProperty("application_name", "myAppName"); 

值但是,文件生成的名称为${application_name}-weirdo.log,而不是myAppName-weirdo.log

任何想法如何我可以解决这个问题将不胜感激。

回答

0

假设您每个应用程序或软件包都有一个appender,为什么不硬编码fileName中的名称不是通过System属性来设置的;它基本上表示来自我的应用程序的所有日志都在此文件名(硬编码名称)中。

反正;你可以看看是否替换${application_name}${sys:application_name}适合你。

相关问题