2011-09-12 45 views
1

我正在用c#开发ASP.NET上的Web应用程序,当网站上发生跟踪错误时,我使用Application_Error方法将错误存储在global.asax数据库中。这工作正常,但有很多错误发生像客户端断开连接。我怎么能从global.asax处理这个错误,它不会被存储在数据库中?如何处理global.asax上的客户端断开连接的错误

+0

你的问题有点不清楚。你能提供一些例子吗?也许显示你正在用来处理应用程序错误的代码,并告诉我们它正在处理什么特定的错误/异常,不应该或不应该处理,应该如何处理?如果您可以包含通过逐步完成代码所收集的信息,而不是按照您希望的那样做,那也会很有帮助。 – David

+0

当您在“例外”中看到“客户端已断开连接”作为消息的一部分时,请忽略它,并且不要将其存储在数据库中。 – Icarus

+0

好的,谢谢我解决它通过忽略它...感谢哥们 –

回答

1

假设你根本不想跟踪它们,我会建议创建一个可忽略异常的黑名单,并使用类型和部分消息文本作为比较对它们进行比较。黑名单可以存储在您刚刚在ApplicationStart上读取并缓存的数据库表中,或者您可以对其进行硬编码。

您还可以通过存储这些列入黑名单的异常被捕获的频率并将它们存储在应用程序缓存中来扩展解决方案。然后有一个管理页面,可以列出计数或平均频率等,以防您需要诊断这些异常是否由于应该查看的某些有效事件而实际发生。

这一切都归结为这些例外对您有多重要,如果他们确实在未来变得重要,那么您可以轻松地用您手头的工具诊断问题。

相关问题