C# 如何对特定事件使用LOG4NET

C# 如何对特定事件使用LOG4NET,c#,log4net,C#,Log4net,大家好,我正在学习Log4net,我有点困了 我正在使用Info(…)来编写日志文件,但我还需要使用Info(…)来处理特定事件中的电子邮件 因此,对Info(…)的一个调用会写入日志并发送电子邮件。实现这一点的最佳方法可能是发送给您的SMTP附件:a可能是您的最佳选择 下面是一个使用StringMatchFilter和SMTPAppender的示例 作者指出: 过滤器类型设置为log4net.filter.StringMatchFilter 每个过滤器段只能有一个stringToMatch元

大家好,我正在学习Log4net,我有点困了

我正在使用
Info(…)
来编写日志文件,但我还需要使用
Info(…)
来处理特定事件中的电子邮件


因此,对
Info(…)
的一个调用会写入日志并发送电子邮件。

实现这一点的最佳方法可能是发送给您的SMTP附件:a可能是您的最佳选择

下面是一个使用StringMatchFilter和SMTPAppender的示例

作者指出:

  • 过滤器类型设置为log4net.filter.StringMatchFilter
  • 每个过滤器段只能有一个stringToMatch元素
  • 以“log4net.Filter.DenyAllFilter”过滤器结束,从默认的“接受所有除非另有指示”过滤行为切换到“拒绝所有除非另有指示”行为

您可以在log4net配置中为特定记录器添加额外记录器:

<log4net>
  <appender name="DefaultAppender" type="...">
    ...
  </appender>
  <appender name="MailAppender" type="...">
    ...
  </appender>
  <root>
    <level value="INFO" />
    <appender-ref ref="DefaultAppender" />
  </root>
  <logger name="MyLoggerNameMail">
    <level value="INFO" />
   <appender-ref ref="MailAppender" />
  </logger>
</log4net>

...
...