私はロギングにlog4netを使用している内部アプリを持っています。ログを%LOCALAPPDATA%\Vendor\App\application.log
に生成したいと思います。残念ながら、log4netはログファイルを%APPDATA%
に作成しています。これは大きな問題ではありません。私たちは実際にここでプロファイルされたローミングを使用しないので、私はそれを避けることができれば私のコードにはほとんど特異性を残したくありません。Windows XPと7で%LOCALAPPDATA%に書き込むようにlog4netを設定するにはどうすればよいですか?
log4netをプログラムで設定せずにpinvokeを使用してXPのパスを取得せずに、指定した場所にファイルを書き込む方法について考えていますか?それは任意のヘルプだ場合
は、ここに私の設定ファイルのアペンダセクションです:
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="${LOCALAPPDATA}\Vendor\App\application.log" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="100KB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger%newline%message%newline" />
</layout>
</appender>