【发布时间】:2013-04-10 10:08:49
【问题描述】:
我在使用 log4net dll 记录到文本文件时遇到问题。
我在 windows server 2008 r2 标准 (64) 上使用 vs 2012 express。 我有以下步骤:
- 打开一个新的 asp.net 网页表单
- 通过 nuget 管理器安装 log4net。
-
在 global.asax 文件中,我在 Application_Start 中有这个:
log4net.Config.XmlConfigurator.Configure (); -
在网络配置中,我已将这一行添加到 configSections 节点:
-
在网络配置中我添加了这个部分:
<log4net debug="true"> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> <file value="c:\webSite\extraDownloadServerResources\Logs\ALU\log.txt" /> <appendToFile value="true" /> <rollingStyle value="Composite"/> <datePattern value="yyyyMMdd" /> <maxSizeRollBackups value="5" /> <maximumFileSize value="5MB" /> <staticLogFileName value="true" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%n%-5p %d %5rms %-22.22c{1} %-18.18M %n - %m%n" /> </layout> </appender> <root> <level value="DEBUG" /> <appender-ref ref="RollingLogFileAppender" /> </root> </log4net> -
在启动页面中,我获取了记录器的实例:
private static readonly ILog log = LogManager.GetLogger ( System.Reflection.MethodBase.GetCurrentMethod ().DeclaringType ); -
在
Page_Load我写了这行:log.Debug(“测试”);
我已将具有读/写权限的 Dedualt 应用程序池用户添加到 log.txt 文件安全性。
我的日志文件中没有任何内容。 为了测试我所做的步骤,我创建了一个新的空网站并一一执行这些步骤。 唉(我喜欢这个词)这次日志已经写入文件了。
谁能指出一个可能的解决方案?
【问题讨论】:
-
请根据您的具体问题更新您的标题。meta.stackexchange.com/questions/10647/…
-
代码看起来没问题。尝试如下更改文件值
-
不,那没用。这是一个与网站无关的外部文件。
-
这里的主要问题是在空网站测试中,我确实将日志写入文件。
-
同时,我尝试了另外两件事: * 在 configSection 节点的 log4net 行中添加了 requirePermission="false"。 * 向日志文件添加 iisuser 权限。没有变化。