【发布时间】:2011-09-07 09:07:25
【问题描述】:
我有一个 .NET Web 应用程序,它应该使用 log4net 将内容记录到 APPDATA 环境变量中。在我的 XP 开发计算机上它工作得很好,但是当部署到 Windows 2003 服务器时,日志被写入 C:\。我尝试使用网络服务和我自己的用户帐户(具有管理员权限)来运行 IIS 应用程序池,但没有区别。
log4net appender 配置如下所示:
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="${APPDATA}\appname\log."/>
<appendToFile value="true" />
<rollingStyle value="Date" />
<staticLogFileName value="false" />
<datePattern value="'.'yyyy-MM-dd'.txt'" />
<maxSizeRollBackups value="14" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date	%-5level	%message%newline" />
</layout>
</appender>
我认为写入权限没有问题,因为如果我将配置更改为这样,它就可以工作:
<file value="c:\Documents and Settings\username\Application Data\appname\log."/>
有人知道出了什么问题以及如何解决吗?
【问题讨论】:
-
遇到同样的问题,只出现在Win2003服务器上,应该是log4net的bug
标签: c# logging iis-6 log4net windows-2003-webserver