Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net xmlconfigurator.configure不引发异常_.net_Log4net - Fatal编程技术网

.net xmlconfigurator.configure不引发异常

.net xmlconfigurator.configure不引发异常,.net,log4net,.net,Log4net,我正在尝试为应用程序配置log4net System.IO.FileInfo fi = new System.IO.FileInfo("some junk file name"); log4net.Config.XmlConfigurator.Configure(fi); log4net.Config.XmlConfigurator.ConfigureAndWatch(fi); 我很惊讶,当上面的代码没有抛出任何异常 当文件不存在时,为什么log4net不抛出任何异常?这不是很糟糕的设计吗?

我正在尝试为应用程序配置log4net

System.IO.FileInfo fi = new System.IO.FileInfo("some junk file name");
log4net.Config.XmlConfigurator.Configure(fi);
log4net.Config.XmlConfigurator.ConfigureAndWatch(fi);
我很惊讶,当上面的代码没有抛出任何异常

当文件不存在时,为什么log4net不抛出任何异常?这不是很糟糕的设计吗? 设计这种行为背后有什么原因吗


如果它没有抛出任何异常,我怎么知道文件解析成功并且工作正常?

我认为这是故意的:请看中的“Log4Net是可靠的日志记录系统”一节

其思想是,日志子系统不应该仅仅因为日志子系统中的错误或配置错误而引发导致应用程序崩溃的异常

至于验证配置文件,您可以在部署到生产环境之前测试配置文件是否在开发环境中生成预期的输出。除非使用经过测试的工具(无需手动编辑),否则不要修改生产配置文件

我还了解到,您可以向log4net元素添加一个属性“debug=true”,以启用内部log4net调试。尽管您可能需要至少一个appender才能正确配置,以查看内部调试输出。不过我从来没有试过这个