13

log4j.properties ファイルで log4j ロギングが構成されているアプリケーションがあります。現在、このアプリケーションは UNIX 上で実行され、/tmp にログ ファイルを作成します。このアプリケーションは Windows で実行する必要があり、そのプラットフォームでは正しい一時ディレクトリ (C:\temp と思われる) を選択する必要があります。

log4j.properties ファイルを変更してこれを実現するにはどうすればよいですか? XML 構成ファイルの使用に切り替える必要がありますか?

4

2 に答える 2

22

${java.io.tmpdir}ハードコードされたパスの代わりに使用するだけだと思います。

于 2008-11-24T16:44:42.710 に答える
1

Log4J v1.2.14 の時点で、log4j.xml ファイルと log4j.properties ファイルの両方でこれを使用できました。Web では変数が 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
于 2009-12-08T23:51:59.047 に答える