Log4net:多个记录器单个appender

时间:2017-12-26 17:19:56

标签: log4net

我有多个记录器引用相同的(滚动文件)appender。 只有第一个记录器的输出出现在文件中。

是否可以使appender与多个记录器一起工作? (我想不是,但是在文档中没有找到任何信息,所以需要确认)。

(我知道有记录器继承,但我问的是非继承的“独立”记录器)

我的记录器配置如下

    <logger name="a.b.c.Class1">
      <level value="ALL"/>
      <appender-ref ref="DebugAppender"/>
      <appender-ref ref="ErrorsAppender"/>
    </logger>
    <logger name="a.b.c.Class2">
      <level value="ALL"/>
      <appender-ref ref="DebugAppender"/>
      <appender-ref ref="ErrorsAppender"/>
    </logger>
    <logger name="a.b.c.Class3">
      <level value="ALL"/>
      <appender-ref ref="DebugAppender"/>
      <appender-ref ref="ErrorsAppender"/>
    </logger>
    <logger name="a.b.c.Class4">
      <level value="ALL"/>
      <appender-ref ref="DebugAppender"/>
      <appender-ref ref="ErrorsAppender"/>
    </logger>
    <logger name="a.d.e.Class5">
      <level value="ALL"/>
      <appender-ref ref="DebugAppender"/>
      <appender-ref ref="ErrorsAppender"/>
    </logger>

我的appender configuratoin如下

   <appender name="DebugAppender" type="log4net.Appender.RollingFileAppender">
      <file value="C:/Debug.log" />
      <appendToFile value="true" />
      <maximumFileSize value="256KB" />
      <maxSizeRollBackups value="10" />
      <param name="Threshold" value="DEBUG" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="Event: %d [%t] %-5p %c - %m%nProperties: %properties%n%n" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="DEBUG" />
        <levelMax value="FATAL" />
      </filter>
    </appender>
    <appender name="ErrorsAppender" type="log4net.Appender.RollingFileAppender">
      <file value="C:/Errors.log" />
      <appendToFile value="true" />
      <maximumFileSize value="256KB" />
      <maxSizeRollBackups value="10" />
      <param name="Threshold" value="WARN" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="Event: %d [%t] %-5p %c %stacktrace - %m%nProperties: %properties%n%n" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <levelMin value="WARN" />
        <levelMax value="FATAL" />
      </filter>
    </appender>

Log4net配置加载常规

log4net.Config.XmlConfigurator.Configure()

0 个答案:

没有答案