我已经使用Log4net创建了一个简单的场景,但我的日志附加器似乎无法工作,因为消息没有添加到日志文件中。
我在web.config文件中添加了以下内容:
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" requirePermission="false"/>
</configSections>
<log4net>
<appender name="LogFileAppender" type="log4net.Appender.FileAppender">
<file value="D:\MyData\Desktop\LogFile.txt" />
<appendToFile value="true" />
<encoding value="utf-8" />
<layout type="log4net.Layout.SimpleLayout" />
</appender>
<root>
<level value="INFO" />
<appender-ref ref="LogFileAppender" />
</root>
</log4net>
在我添加的全局ASAX文件中:
ILog logger = LogManager.GetLogger(typeof(MvcApplication));
在Application_Start方法中:
logger.Info("Starting the application...");
为什么测试日志是“启动应用程序...”是否未添加到日志文件中?
发布于 2010-09-02 05:15:06
你会打电话给
log4net.Config.XmlConfigurator.Configure();
有什么地方可以让log4net读取你的配置?例如在Global.asax中:
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
// Initialize log4net.
log4net.Config.XmlConfigurator.Configure();
}
发布于 2010-09-01 21:38:15
使用以下常见问题页面:Apache log4net Frequently Asked Questions
大约3/4的篇幅告诉你如何使用应用程序跟踪来启用log4net调试。这将告诉您您的问题所在。
基本情况是:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="log4net.Internal.Debug" value="true"/>
</appSettings>
</configuration>
您可以在标准输出中看到跟踪
发布于 2013-02-04 16:25:29
正如@AndreasPaulsson建议的那样,我们需要对其进行配置。我在AssemblyInfo
文件中进行配置。我在这里指定configuration file name
。
// Log4Net Configuration.
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]
https://stackoverflow.com/questions/3618380
复制相似问题