题
我有其中的log4j日志记录在log4j.properties文件配置的应用程序。目前,该应用程序运行在UNIX系统将在/ tmp中的日志文件。此应用程序需要在Windows上运行,并在该平台上,我想为它选择正确的临时目录,我相信这是C:\ TEMP
我怎样才能改变我的log4j.properties文件来实现这一目标?我需要切换到使用XML配置文件?
解决方案
我觉得你只是在一个地方硬编码路径的使用${java.io.tmpdir}
。
其他提示
作为Log4J的v1.2.14的,我能够在两者的log4j.xml文件以及一个log4j.properties文件来使用此。大家普遍认为的变量不会在DOMReader解析网络上的一些讨论,但他们为这个版本的log4j的。
<appender name="rolling_file_appender_ourapp" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="${user.home}/.mycompany/OurApp.log" />
<param name="Append" value="false" />
<param name="MaxFileSize" value="10MB" />
<param name="MaxBackupIndex" value="3" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d | %-5p | %c | %m | %t | %x %n" />
</layout>
</appender>
或
log4j.appender.rfile=org.apache.log4j.FileAppender
log4j.appender.rfile.layout=org.apache.log4j.PatternLayout
log4j.appender.rfile.Append=false
log4j.appender.rfile.layout.ConversionPattern=%d [%p] %c %m%n
log4j.appender.rfile.File=${user.home}/.mycompany/OurApp.log
不隶属于 StackOverflow