Log4net不写入文件
我想添加新的日志到文件。这是我的appender:
在我的class上,我补充道
[assembly: XmlConfigurator(Watch = true)]
我添加访问该文件的所有人但是:log4net不写入文件。 为什么?
出现问题时,Log4net会无声地失败。 设计自负是没有记录优先于取消应用程序。 要弄清楚什么是错的,请通过将此密钥添加到[app / web] .config文件来打开Log4net的内部调试:
调试消息将写入控制台或System.Diagnostics.Trace
系统。 来自Phill Haack的更多细节,请访问http://haacked.com/archive/2006/09/26/Log4Net_Troubleshooting.aspx/
Log4net可能会失败的原因有很多。 日志文件目录上的权限问题,对于初学者(对于服务器进程尤其如此,您可能在一组受限制的安全权限下运行)。
您只需要调用Configure:
log4net.Config.XmlConfigurator.Configure();
您可以在此处查看更多详细信息: Log4net不会写入日志文件
您需要初始化日志记录作为应用程序的第一步,并从具有[assembly]
标记的同一程序集中初始化:
来自文档 :
因此,如果使用配置属性,则必须调用log4net以允许它读取属性。 对
LogManager.GetLogger
的简单调用将导致读取和处理调用程序集上的属性。 因此,必须在应用程序启动期间尽早进行日志记录调用,当然在加载和调用任何外部程序集之前。
在您的启动代码中添加以下内容:
LogManager.GetLogger("Initialises logging from assembly attributes");
你应该添加这个配置部分:
引用log4net配置。