2010-01-29 108 views
0

我们有许多程序集使用的程序集(类库)。我想将一些程序集的日志路由到不同的目标,但我有一个App.Config文件,那么我该如何实现?我很确定在Logging Application Block中有这样的设置,我不知道。另外,我希望根据每个正在进行日志记录的程序集的优先级(是否应该记录日志)来路由日志。企业库日志记录应用程序块不同的来源

回答

0

我找到了解决方案。我所做的是为每个程序集创建一个类别和一个跟踪监听器。我使用了主要可执行文件的app.config文件,其他程序集正常工作。

考虑到日志级别,它已经​​存在于Logging Application Block中,您可以使用Category Sources的SourceLevels属性或Trace Listeners的Filter属性来处理它。两者的区别在于范围。

模式&实践的论坛:

他们是一样的,唯一不同的是在他们的范围之内。类别中的SourceLevels属性适用于属于它的所有跟踪侦听器。跟踪侦听器中的Filter属性显然仅适用于其自身。首先在跟踪侦听器上的类别级别上完成筛选。如果类别限制较多,则不会继续调用跟踪侦听器。如果它允许所有类型的事件,则它将日志条目传递给每个跟踪侦听器,并且每个事件都会检测它是否会根据其筛选器记录该条目。

相关问题