Web开发异常行为排查常用方法图文介绍

 更新时间:2012年11月23日 11:19:20   作者:   我要评论
平常程序遇到错误,开发环境下一般都用调试搞定,生产环境下通过查看日志搞定。但也有搞不定的时候,本文提供了详细的解决方案
异常出现

平常程序遇到错误,开发环境下一般都用调试搞定,生产环境下通过查看日志搞定。但也有搞不定的时候,这是我在Silverlight开发时遇到的的错误:

如果启用调试,"对不起,程序已经崩溃,无法附加到进程"。怎么办?提示信息太少,盲目怀疑程序哪里写的不对,只会使问题变得更糟,拖延了解决问题的时间。

异常排查

此时我们应该查看是哪一个请求引起的错误,方法就是使用浏览器的开发者工具:IE8以上按f12,chrome按下ctrl+shift+I,转到“网路”,开始捕捉:

这里我们得到的是一个500错误,知道了是请求.svc时出错了。双击查看响应正文或者直接复制请求url到浏览器访问可以得到更详细的出错信息:

我们看到调用堆栈还没有开始调用我们的代码,和我们自己的代码没有关系。此时去google(程序猿果断放弃baidu吧),没有找到任何解决问题的方法。我们只能根据自己程序的实际情况,判断是DomainService出的问题。因为平时按部就班写的程序根本不出现这种错误,但这次是引用的类库中的DomainService,所以一定是漏掉了什么dll导致的。最偷懒的解决方法:手动添加一个“域服务类”到工程,VS自动添加所需dll,并配置好了web.config。再次运行,问题解决了。

结论

最怕遇到这种错误提示很少的的错误,因为莫名其妙,无从查起,让人抓狂。有时一个错误一下午就浪费过去了,还不一定解决。方法还是具体问题具体分析,根据程序的实际情况,结合自己的成功经验,多google,一定能解决的。当然如果自己解决了又google不到的最好发到cnblogs,作为前车之鉴服务大家,这也是写技术博的猿最愿意做的事吧。

相关文章

最新评论