繁体   English   中英

Log4Net单独的配置文件无法正常工作

[英]Log4Net separate config file not working

我有一个奇怪的问题。 我在解决方案中有多个项目。 其中一个是WebAPI,它记录得很好。 另一个是MVC管理站点,这个不会登录。 这是我尝试过的。

我的日志代码:

var log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
log.Info("Some log message");  

在assemblyInfo中,我尝试了以下各项......

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "logging.config", Watch = true)]
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "C:\\full_path\\logging.config", Watch = true)]  

在Global.asax application_start中我尝试了以下(删除assemblyInfo行)

log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo("Logging.config"));
var log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
log.Info("Application starting");  

这也不会创建日志。 我可以创建一个的方法是使用global.asax中的代码和logging.config的完整路径。

我很困惑,因为webapi只使用只有相对路径的assemblyInfo。 我还使用AssemblyInfo解决方案(相对路径)制作了带有MVC项目的示例虚拟解决方案,并且它也在那里工作。

有任何想法吗?

更新 - 发现问题

我必须在Application_Start中设置配置文件观察器:

log4net.Config.XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo(AppDomain.CurrentDomain.BaseDirectory + "logging.config"));

事实证明,DotNetOpenAuth.Core.dll使用log4net,并且使用AssemblyInfo解决方案无法正常工作。 我在这个博客中找到了详细信息: http//hanskindberg.wordpress.com/2013/04/07/log4net-configuration/

谢谢

我必须在Application_Start中设置配置文件观察器:

log4net.Config.XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo(AppDomain.CurrentDomain.BaseDirectory + "logging.config"));

事实证明,DotNetOpenAuth.Core.dll使用log4net,并且使用AssemblyInfo解决方案无法正常工作。 我在这个博客中找到了详细信息: http ://hanskindberg.wordpress.com/2013/04/07/log4net-configuration/(查看提到DotNetOpenAuth.Core.dll的段落)

多年来我一直在努力寻找这个解决方案。 我终于可以找到以下解决方案为我工作>

[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config", Watch = true)]加上@BCarlson建议的配置

XmlConfigurator.ConfigureAndWatch(new System.IO.FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config"));

为了总结一切,我已经使用外部log4net.config文件为log4net配置创建了一个示例c#控制台项目。 https://github.com/riddhik84/Log4net-Tutorial

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM