前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >关于在IIS下的.NET网站出现应用池挂掉的Bug排查方法

关于在IIS下的.NET网站出现应用池挂掉的Bug排查方法

作者头像
徐大嘴
发布2019-03-21 10:35:38
2.2K0
发布2019-03-21 10:35:38
举报
文章被收录于专栏:大嘴说编程大嘴说编程

环境:MVC4+IIS7

现象:测试的时候没有显现出来,当运行到生产环境出现大量访问量的情况下,会出现如下错误:

如果应用程序池挂掉的话,可以肯定的是,代码出现了很严重的错误,导致程序挂了,原因可能是死循环之类的。而又是个别现象引起,测不出来,只能想其他的办法了。

解决方法

首先,在服务器端:

1.开启Windows Error Reporting Service服务

2.执行下面的注册表脚本,在w3wp.exe程序挂掉的时候,自动将dump文件保存到D:\dumps文件夹中:

代码语言:javascript
复制
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\w3wp.exe]
"DumpFolder"=hex(2):64,00,3a,00,5c,00,64,00,75,00,6d,00,70,00,73,00,00,00
"DumpCount"=dword:00000002
"DumpType"=dword:00000002

3.记录出问题的w3wp.exe程序的pid,把生成的dump文件复制到本地,进行调试。

之后,在本机:

1.双击从服务器上拿下来的dump文件,使用vs(2013、2015等,2010、2008没有测试过)打开,之后会显示出异常摘要等信息。

2.点击右侧“操作”列中的“设置符号路径”菜单

3.通过菜单“视图”——“解决方案资源管理器”,打开解决方案管理器,之后打开解决方案的属性页,选择调试源文件,之后新加一行,选择对应的源代码(项目)文件夹,之后确定保存。

4.回到dump文件摘要页面,通过右侧“操作”菜单下的“使用仅限托管进行调试”菜单进行调试,可以定位到问题代码位置进行解决处理。当然根据问题的不同,还可以选择其他几个调试方法。

以上。


本文作者:老徐

本文链接:https://cloud.tencent.com/developer/article/1405666

转载时须注明出处及本声明

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档