为应用程序池“XXX”提供服务的进程在与 Windows Process Activation Service 通信时出现严重错误。该进程 ID 为“XXXX”。数据字段包含错误号。

来源:互联网 发布:linux proguard 编辑:程序博客网 时间:2024/06/06 02:55

转自 :http://www.cnblogs.com/qidian10/p/6028784.html


日志中大量报错,IIS严重错误,此类错误默认情况下5分钟连续出现5次会导致IIS应用程序池直接挂掉,挂掉之后应用基本上是废掉了,访问量越高,挂的越快!

临时补救该错误的一个方法为,调整应用程序池“服务不可用”这样应用程序池不会挂了,但问题依旧存在。


分析日志错误,在系统日志和w3p日志中均未见该异常的描述。上述事件异常中提示,异常代码为0xc00000fd ,解释为栈溢出,基本断定为是程序个位置出了问题,很可能是死循环造成的,但是具体在哪个问题,无从查起。


通过dmp文件直接跟踪iis崩溃的原因

执行下面注册表脚本,设置w3wp.exe 崩溃时自动抓取dmp文件,保存在D:\dumps文件夹里

 

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

双击DMP文件会直接进入VS2013,可以看到Summary信息 

可选步骤:设置符号路径

点击“调试托管内存” (我是没点起,用的托管调试)

5、查看具体异常原因,定位异常代码位置

报错时 打开 局部变量和堆栈调试,异常代码位置里有你详细出错的位置及问题。


阅读全文
0 0
原创粉丝点击