1

如何配置 log4net 或我的 Gallio 测试运行程序(Icarus 和 Echo)以对 Gallio 执行日志和我自己的文件附加程序使用不同的日志记录级别。我希望我的日志文件有一个 DEBUG 日志级别,而 Gallio 有一个 ERROR 日志级别。

我认为这会起作用,但 Gallio 正在阅读两个附加程序:

  <log4net>
    <appender name="Console" type="log4net.Appender.ConsoleAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
      </layout>
    </appender>
    <appender name="File" type="log4net.Appender.FileAppender">
      <file value="test.log" />
      <appendToFile value="false" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
      </layout>
    </appender>

    <logger name="TestNamespace">
      <level value="DEBUG" />
      <appender-ref ref="File" />
    </logger>
    <root>
      <level value="ERROR" />
      <appender-ref ref="Console" />
    </root>
  </log4net>
4

1 回答 1

1

Gallio 正在将控制台输出重定向到其执行日志。所以我需要将 ConsoleAppender 的阈值设置为我想要的 Gallio 执行日志的级别。

  <log4net>
    <appender name="Console" type="log4net.Appender.ConsoleAppender">
      <threshold value="ERROR"/>
      <layout type="log4net.Layout.PatternLayout">
        <!-- Pattern to output the caller's file name and line number -->
        <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
      </layout>
    </appender>
    <appender name="File" type="log4net.Appender.FileAppender">
      <threshold value="DEBUG"/>
      <file value="test.log" />
      <appendToFile value="false" />
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
      </layout>
    </appender>

    <root>
      <appender-ref ref="Console" />
      <appender-ref ref="File" />
    </root>
  </log4net>
于 2013-03-20T01:24:05.773 回答