5

我有一个快速的 log4net 问题。如何从 app.Config 中指定要使用的附加程序?这个特定的配置文件引用了 2 个不同的附加程序。两者都是滚动文件附加程序,但它们指向不同的文件。在整个应用程序中调用 log4net 并将一个类型传递给构造函数。像这样...

 private static readonly ILog log = LogManager.GetLogger(typeof(Foo));

log4net 如何知道选择哪个 appender?您可以将类型映射到特定的命名附加程序吗?我知道 GetLogger 有 5 个构造函数,你能传递一个类型和一个 appender 名称吗?我看到“repositoryName”,不知道那是什么。如果有人能指出我正确的方向,我将不胜感激。我希望将一组类型专门记录到一个附加程序。

感谢您提供任何提示,
〜在圣地亚哥

4

1 回答 1

7

使用一个<logger>元素,使用完整的类名Foo

<logger name="full.parent.namespace.Foo">
  <level value="WARN" />
  <appender-ref ref="SomeAppender" />
</logger>

指定要使用的最低级别和对所需输出附加程序的引用。

<logger>您还可以通过省略类名来对特定命名空间中的所有类使用单个。

<logger name="full.parent.namespace">
  ....
</logger>
于 2010-09-10T15:51:14.830 回答