如何解决如何在dll中配置多个记录器
| 我是Log4net的新手,并且我不确定在dll中有多个记录器时如何正确设置app.config。我很好,但是我想知道当有10到20种不同的记录器时是否有更简单的方法。也可能是我不明白这一点。 好的,假设dll使用以下记录器(实际上大约有20种不同的语句,如下所示):private static readonly ILog log = LogManager.GetLogger(typeof(XmlConfiguration));
private static readonly ILog log = LogManager.GetLogger(typeof(ClassValidator));
这是否意味着我需要在app.config中做类似的事情(为简便起见,我省略了添加程序)?
<logger name=\"XmlConfiguration\" additivity=\"false\">
<level value=\"DEBUG\"/>
<appender-ref ref=\"FileLog\"/>
</logger>
<logger name=\"ClassValidator\" additivity=\"false\">
<level value=\"DEBUG\"/>
<appender-ref ref=\"FileLog\"/>
</logger>
我是否可以以某种方式进行配置,以使每个由特定dll或部分名称空间公开的记录器(dll中的记录器位于几个不同的名称空间下,但具有相同的根名称空间)都都进入相同的记录源(文件,控制台等)?解决方法
是的,你是对的。您可以通过配置多个记录器为不同的dll设置不同的登录级别:
这是我成功使用的示例:
<!-- ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF -->
<root>
<level value=\"Error\"/>
<appender-ref ref=\"RollingLogFileAppender\"/>
</root>
<logger name=\"NHibernate\">
<level value=\"ERROR\" />
</logger>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。