Tôi có một ứng dụng nội bộ đang sử dụng log4net để ghi nhật ký. Tôi muốn các bản ghi được tạo tại %LOCALAPPDATA%\Vendor\App\application.log
. Thật không may, log4net đang tạo tệp nhật ký tại %APPDATA%
thay thế. Nó không phải là một vấn đề lớn, bởi vì chúng tôi thực sự không sử dụng roaming profiled ở đây, nhưng tôi không thích để lại idiosyncrasies nhỏ trong mã của tôi nếu tôi có thể tránh nó.Tôi nên định cấu hình log4net như thế nào để ghi% LOCALAPPDATA% trên Windows XP và 7?
Bất kỳ suy nghĩ nào về cách lấy tệp được ghi vào vị trí tôi đã chỉ định mà không định cấu hình log4net theo chương trình và sử dụng pinvoke để lấy đường dẫn cho XP?
Dưới đây là phần appender của tập tin cấu hình của tôi nếu nó là bất kỳ sự giúp đỡ:
<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>