log4net配置后不运行,没有日志输出

log4net配置后不运行,没有日志输出

偷懒,新建项目中使用Nuget下载了log4net的配置文件(就那不带版本号的log4net.detail里面有说明是log4net xml),但设置好之后,log4net竟然奇葩的罢-工了,没有任何报错。该配置方式是使用独立的log4net.xml文件来进行配置。

加载使用:

code

var log4net_config = Path.Combine(Path.GetDirectoryName(GetType().Assembly.Location),"log4net.xml");

XmlConfigurator.Configure(new FileInfo(log4net_config));

 检视过整个配置之后,发现这个Nuget来的配置文件有些地方出现纰漏:

其一是文件名称,log4net.xml并不是那么好用的,因为log4net自己也会生成一个同名的文件,如果顽固的使用xml文件,那么你需要配合第二点,并确保输出目录中的这个文件确实是配置文件,个人建议改成log4net.config更为妥当;

其二是项目中该文件属性,复制到输出目录需要设置成始终复制或较新复制,生成操作更应该不是无,请选择内容;

按照上面的修改配置文件之后,使用下面的代码加载后,log4net又活过来了。

code

var log4net_config = Path.Combine(Path.GetDirectoryName(GetType().Assembly.Location),"log4net.config"); // here is diff.

XmlConfigurator.Configure(new FileInfo(log4net_config));

当然,为了简单,你也可以在AssemblyInfo.cs中使用:

code

// 注意:是在AssemblyInfo.cs文件中添加

[assembly:log4net.Config.XmlConfigurator(ConfigFile="log4net.config",Watch=true)];

恩,就这样,log4net又能和我们一起愉快的玩耍了。

免费领取兄弟连IT教育原创linux运维工程师视频/细说linux教程,详情咨询官网客服:http://www.lampbrother.net/linux/

 

PHPLinuxHTML5UIAndroid等视频教程(课件+笔记+视频)!联系Q2430675018

你可能感兴趣的:(linux,linux教程,linux资料,linux视频,linux自学)