Heim >Backend-Entwicklung >PHP-Tutorial >log4net配置后不运行,没有日志输出

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

WBOY
WBOYOriginal
2016-07-25 08:46:501153Durchsuche
偷懒,新建项目中使用Nuget下载了log4net的配置文件(就那不带版本号的log4net.detail里面有说明是log4net xml),但设置好之后,log4net竟然奇葩的罢工了,没有任何报错。该配置方式是使用独立的log4net.xml文件来进行配置。
加载使用:
code
var log4net_config=Path.Combine(Path.GetDirectoryName(GetType().Assembly.Location),"log4net.xml");
XmlConfigurator.Configure(newFileInfo(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(newFileInfo(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/
学PHP、Linux、HTML5、UI、Android等视频教程(课件+笔记+视频)!联系Q2430675018



Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn