Я настроил log4net с помощью RollingLogFileAppender и SmtpAppender, с целью регистрации уровня DEBUG для RollingLogFileAppender и FATAL только для SmtpAppender:
<appender name="SmtpAppender" type="log4net.Appender.SmtpAppender">
  <to value="[email protected]" />
  <from value="[email protected]" />
  <subject value="Fatal Error" />
  <smtpHost value="smtp.test.com" />
  <SMTPPort value="366"/>
  <Username value="[email protected]"/>
  <Password value="password"/>      
  <bufferSize value="1" />
  <lossy value="true" />
  <evaluator type="log4net.Core.LevelEvaluator">
    <threshold value="FATAL"/>
  </evaluator>      
  <layout type="log4net.Layout.PatternLayout">
  <conversionPattern value="%date [%thread] %-5level %logger [%ndc] - %message%newline"                             />
  </layout>
</appender>
<root>
  <level value="DEBUG" />
  <appender-ref ref="RollingLogFileAppender" />
  <appender-ref ref="SmtpAppender" />
</root>
Это работает отлично, пока я не увеличиваю bufferSize. Когда я это делаю, все уровни отправляются по электронной почте, а log4net.Core.LevelEvaluator, похоже, игнорируется. Я также пытался использовать LevelRangeFilter и LevelMatchFilter, но с этими настройками я вообще не получаю никаких писем.
