1

我有一个 ASP.NET 网站,它利用了企业库 (3.1) 的许多方面,包括日志记录应用程序块。我正在使用自定义 TraceListener 来处理所有日志记录请求。

我想添加一个电子邮件侦听器,只要网站发生错误,它就会触发一封电子邮件。需要明确的是(并且因为我犯了同样的错误),这不能通过将以下内容添加到您的配置文件来实现:

  <errors switchValue="All" name="Logging Errors &amp; Warnings">
    <listeners>
      <add name="Email Listener" />
    </listeners>

这将在logging发生错误时发送电子邮件,而不是在调用 Trace.TraceError() 时发送电子邮件。我找到了一些编写自定义代码来执行此操作的示例,但这不是我想要做的。

我确信在开发 Enterprise Library 时就考虑到了这一点,我希望遇到一个聪明的人,回答有关 Stack Overflow 的问题,他遇到了这个问题。提前致谢!

更新

解决了。最终使用了一个类别并为此发送了一封电子邮件。

<categorySources>
  <add switchValue="Error" name="Errors">
    <listeners>
      <add name="Email Listener" />
    </listeners>
  </add>
</categorySources>
4

1 回答 1

1

你不能做类似的事情(伪代码)

<allEvents switchValue="Error" name="blahblah">
  <listeners><add name="Email Listener"/></listeners>

?

于 2009-04-13T20:32:14.013 回答