Как мне настроить log4net SmtpAppender, чтобы отправлять мне электронные письма -только при достижении определенного уровня?

Я пытаюсь настроить log4net SmtpAppender так, чтобы я получал электронную почту -только при достижении определенного уровня журнала, но с включением последних 10 строк из всех уровней . Это мой конфиг:

<appender name="EmailAppender" type="SmtpSubjectLayoutAppender">

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

  <bufferSize value="10" />
  <lossy value="false" />

 ...
</appender>

Я тренирую это с помощью этого кода:

for (var i = 1; i <= 30; i++)
{
    logger.Info("This is just a test message " + i);
}

logger.Error("Error message");

Проблема в том, что я получаю 3 сообщения e -, 2 со всеми журналами INFOи одно с последними строками, которые произошли доERROR:

[2012-07-27 18:59:55.657][INFO ][Chase][tid=14972] This is just a test message 23
[2012-07-27 18:59:55.659][INFO ][Chase][tid=14972] This is just a test message 24
[2012-07-27 18:59:55.661][INFO ][Chase][tid=14972] This is just a test message 25
[2012-07-27 18:59:55.662][INFO ][Chase][tid=14972] This is just a test message 26
[2012-07-27 18:59:55.664][INFO ][Chase][tid=14972] This is just a test message 27
[2012-07-27 18:59:55.666][INFO ][Chase][tid=14972] This is just a test message 28
[2012-07-27 18:59:55.667][INFO ][Chase][tid=14972] This is just a test message 29
[2012-07-27 18:59:55.670][INFO ][Chase][tid=14972] This is just a test message 30
[2012-07-27 18:59:55.671][ERROR][Chase][tid=14972] Error message

Как мне настроить добавление так, чтобы я получал электронное письмо -с последними 10 строками, если возникло WARN или выше, но в противном случае игнорировал буфер?

5
задан Daniel T. 28 July 2012 в 05:06
поделиться