2010-06-14 67 views

回答

1

在這裏玩純粹的猜測。
看着文檔&想到,這可能是做到這一點的方法。

注意:DEBUG級別的消息被記錄到控制檯& WARN級別的消息被記錄到eventlog。

希望工程:)

<log4net> 
    <!-- A1 is set to be a ConsoleAppender --> 
    <appender name="A1" type="log4net.Appender.ConsoleAppender"> 

     <!-- A1 uses PatternLayout --> 
     <layout type="log4net.Layout.PatternLayout"> 
      <conversionPattern value="%-4timestamp [%thread] %-5level %logger %ndc - %message%newline" /> 
     </layout> 
    </appender> 

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" > 
    <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" /> 
    </layout> 
</appender> 

    <logger name="DebugLogger"> 
     <level value="DEBUG" /> 
     <appender-ref ref="A1" /> 
    </logger> 

    <logger name="WarnLogger"> 
     <level value="WARN" /> 
     <appender-ref ref="EventLogAppender" /> 
    </logger> 
</log4net> 
1

這至少適用於SmtpAppender。猜猜它也適用於其他appenders,但我沒有測試它

<evaluator type="log4net.Core.LevelEvaluator"> 
    <threshold value="WARN"/>