【发布时间】:2013-10-24 15:11:06
【问题描述】:
我今天开始发生一些奇怪的事情。我有一个带有 log4net 设置的 asp.net mvc 应用程序,一切正常。一定是某处发生了变化,现在什么都没有记录(没有创建日志文件)。
这是我的 global.asax.cx
protected void Application_Start()
{
log4net.Config.XmlConfigurator.Configure();
}
这是我的 web.config 中的配置:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="FileAppender" type="log4net.Appender.RollingFileAppender">
<file value="c:\logs\api\ApiLog.txt" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="FileAppender" />
</root>
</log4net>
由于某种原因,c:\logs\api\apilog.txt 文件永远不会被创建。但是,如果我将我的 application_start 方法更改为此它可以正常工作:
log4net.Config.XmlConfigurator.Configure(new FileInfo("DirectPathToMy\web.config"));
知道为什么调用Configure() 在我的web.config 中默认找不到配置吗?
【问题讨论】:
-
您确定
<log4net>部分是在您的根~/web.config文件中定义的,而不是~/Views/web.config中的部分吗?
标签: c# asp.net .net asp.net-mvc log4net