Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging 如何配置log4net SmtpAppender,使其仅在达到某一级别时向我发送电子邮件?_Logging_Log4j_Log4net - Fatal编程技术网

Logging 如何配置log4net SmtpAppender,使其仅在达到某一级别时向我发送电子邮件?

Logging 如何配置log4net SmtpAppender,使其仅在达到某一级别时向我发送电子邮件?,logging,log4j,log4net,Logging,Log4j,Log4net,我正在尝试配置一个log4net SmtpAppender,这样我只会在达到某个日志级别时收到一封电子邮件,但包含所有级别的最后10行。这是我的配置: <appender name="EmailAppender" type="SmtpSubjectLayoutAppender"> <evaluator type="log4net.Core.LevelEvaluator"> <threshold value="WARN"/> </eval

我正在尝试配置一个log4net SmtpAppender,这样我只会在达到某个日志级别时收到一封电子邮件,但包含所有级别的最后10行。这是我的配置:

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

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

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

  ...
</appender>
如何配置appender,以便在出现警告或更高级别时收到最后10行的电子邮件,否则忽略缓冲区?

我会尝试一下:


过滤在其他“场景”中对我很有效。

您需要将有损值设置为true:

<lossy value="true" />

在配置中,log4net不仅在记录错误时写入缓冲区,而且在缓冲区已满时写入缓冲区。lossy标志告诉log4net在必要时丢弃消息。

使用

<threshold value="WARN"/>


似乎不再工作(log4net版本1.2.13.0)了

使用



当一个人确实想要得到这些信息时,这是不好的。

看看这篇文章,寻找正确的答案:我相信它也控制着有损追加器保留的行数
<lossy value="true" />
<threshold value="WARN"/>
<evaluator type="log4net.Core.LevelEvaluator">
   <threshold value="WARN"/>
</evaluator>
<lossy value="true" />