统一错误管理解决方案

时间:2009-11-05 13:20:49

标签: .net instrumentation

我正在寻找一种解决方案,它为我提供了一个中央集线器,可以从中查看和管理系统中发生的错误,无论它们发生在哪个层。我已经有了日志记录(log4net),性能计数器等等。但我想知道的是我可以使用哪些工具将这些信息整理到一个中心位置。我对商业和开源解决方案都感兴趣。

理想情况下,我想在早上走进工作,看一下告诉我的报告:

  • 发生了什么错误
  • 中出现错误的环境
  • 错误发生在哪个环境层(网络,应用服务器,客户端)
  • 错误的详细信息(消息,堆栈跟踪等)

如果重要,我在服务器端使用.NET 3.5,Flash / Flex客户端。我的目的是公开一个客户可以调用以记录错误的服务(假设错误并不排除网络连接)。

任何想法都会受到赞赏。

谢谢,
肯特

3 个答案:

答案 0 :(得分:2)

看看Google Elmah。我已将它用于多种应用程序,并发现它非常有用。

答案 1 :(得分:0)

我们正在使用Log4Net appender将(通过UDP网络)登录到中央syslogd(Windows端口)。这对.net方面有用,但我对Flash / Flex知之甚少,所以我不能告诉你任何关于它的事情。

答案 2 :(得分:0)

您可以为所有环境和层指向的错误集合构建Web服务接口。作为Web服务应该允许您使用不同的技术(即您的Flash / Flex应用程序)与其进行优雅的交互。作为包含Web服务的Web应用程序,您还可以为其提供非明确Web服务契约的其他接口,例如可能简化非.NET技术实现的RESTful接口。然后,您可以构建由同一Web应用程序呈现的报告,以用于简单的单一收集和交付/报告系统。当然,这种集中式收集系统会遇到连接问题,但我觉得这些问题超出了这种系统试图实现的范围。它们通常是一个更大问题的标志,也是人们迅速提出的问题(例如,当他们无法更新他们的facebook状态,因为intertubes失败了。; - )

我不知道这样的系统是哪种商用产品。我在几年前为前任雇主建立了这样一个实施,并不是非常困难或复杂。