2009-11-05 152 views
1

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

理想情况下,我想走进工作在早晨和看一个报告,告诉我:

  • 发生了什么错误
  • 的什么层次发生了什么样的环境错误环境发生了(网络,应用服务器,客户端)错误的错误
  • 细节(信息,堆栈跟踪等)

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

任何想法,将不胜感激。

感谢,
肯特

回答

2

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

+0

谢谢,这看起来像一个不错的选择。说实话,我认为这只是ASP.NET,但它看起来好像他们已经添加了一个名为错误信号的功能,使我可以在非ASP.NET环境中使用它。 – 2009-11-07 12:32:49

0

我们正在使用log4net的Appender的记录(通过UDP网络)到中央的syslogd(窗口)。这对于事物的.net一方是有效的,但我对Flash/Flex知之甚少,所以我不能告诉你任何有关这方面的事情。

0

您可以为所有环境和层指向的错误收集构建Web服务接口。作为一个Web服务应该允许你从不同的技术(例如你的Flash/Flex应用程序)方便地进行交互。作为一个包含Web服务的Web应用程序,您还可以为其提供其他不是显式Web服务合约的接口,例如可能简化非.NET技术实现的RESTful接口。然后,您可以构建由同一个Web应用程序提供的报告,以用于简单而单一的收集和交付/报告系统。当然,这种集中式收集系统会遇到连接问题,但我觉得这些问题不在这样的系统试图实现的范围之内。他们通常是一个更大的问题和人们快速提出的问题的迹象(例如,当他们无法更新他们的Facebook状态,因为interrtubes是down.-)

我不知道什么样的这样的系统可以在市场上买到。几年前,我为以前的雇主构建了这样的实施方案,而且这不是非常困难或复杂。

+0

是的,我知道我可以建立它,但我想写更少的代码,而不是更多;) – 2009-11-07 12:33:34