我有一个正在持续开发的相当复杂的遗留ASP.Net应用程序,对于一个客户来说,它最近开始出错。
该应用程序在服务器端使用ASP.Net 3.5和C#,并以SQL Server2005和IIS6为后盾。
该应用程序还利用了微软的ASP.net AJAX库和DevExpress组件。
我们有一个相当全面的日志平台,通过一个自定义页面库中的Page_Error处理程序,它记录所有未处理的异常并显示一个很好的错误页面。
问题是,一个客户端最近开始收到我们无法跟踪的错误-尽管显示了很好的错误页面,但没有记录任何内容。Page_Error处理程序不会捕获和处理任何异常,该处理程序是将用户重定向到错误页面的方法-并且在不处理错误的情况下不会发生重定向。
我已经在ASP.Net Ajax PageScriptManager EndRequestHandler Javascript处理程序中添加了一些客户端Javascript,它可以将客户端错误记录到一个开放的ashx日志脚本中。
客户端捕获的唯一错误如下:
Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 0
Sys.WebForms.PageRequestManagerParserErrorException: The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.
Details: Error parsing near '
<!DOCTYPE html P'.这些错误没有对应的服务器端错误。
不幸的是,没有为这个项目设置单元测试的范围,它太大了,我不知道从哪里开始客户端-服务器交互部分。
我的问题是,有没有人能推荐一种方法来查看出错的是什么,为什么出错,以及为什么Page_Error处理程序没有捕捉到这一点?
发布于 2012-03-05 01:00:47
事实证明,没有办法追踪这些问题-问题的范围更广,涉及客户端防火墙随机阻止AJAX通信,或者修改结果传递。
发布于 2010-11-15 23:38:07
您可以尝试使用ELMAH来捕获应用程序中未处理的异常。
https://stackoverflow.com/questions/4185456
复制相似问题