调试诊断工具不在崩溃

时间:2015-09-22 12:59:57

标签: .net windows debugging iis debugdiag

服务器:Windows 2012r2 调试诊断工具v2.1更新1

调试器附加到应用程序池。我已经确认它是该网站的正确池。池崩溃,但永远不会生成转储文件。

  

“应用程序池”由于系列而自动禁用   服务该应用程序池的进程中的失败。“

规则只是设置为查看应用程序池,而不是捕获第一次机会异常。我尝试删除并重新添加它几次,它从不生成转储。

我检查了它生成的调试日志,这是在池崩溃之前生成的最后一个异常:

  

警告:帧IP不在任何已知模块中。以下帧可能是   错误。     为0x0     为0x0     为0x0

编辑:想要添加转储确实为第一次机会异常生成。在尝试捕获第二次机会或实际导致崩溃的机会时,这似乎只是一个问题。

编辑2:每个请求的一个调试日志的最后几行:

[9/16/2015 7:21:31 PM]
  Exception 0XC00000FD on thread 154788.  DetailID = 48
  Thread created. New thread system id - System ID: 85156
  Thread exited. Exiting thread system id - System ID: 85156. Exit code - 0x00000000
  Thread exited. Exiting thread system id - System ID: 326816. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 41368. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 213340. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 300224. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 51008. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 45288. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 75176. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 143512. Exit code - 0x800703e9
  Thread exited. Exiting thread system id - System ID: 68504. Exit code - 0x800703e9
....... (goes on like this for awhile)
Process exited. Exit code - 0x800703e9

该例外情况与此相关

DetailID = 48
    Count:    1
    Exception #:  0XC00000FD
    Stack:        

        WARNING: Frame IP not in any known module. Following frames may be wrong.
        0x0
        0x0
        0x0
        0x0
        0x0

1 个答案:

答案 0 :(得分:2)

默认情况下,debugdiag崩溃规则仅对所有未处理的第二次机会异常进行转储(如果您创建了崩溃规则并将所有设置保留为默认值),那么如果未生成转储,则进程不会因第二次崩溃而崩溃机会异常。

有时CLR在遇到致命异常时会调用TerminateProcess函数(堆栈溢出就是其中之一)。因此,如果您的进程因这些异常而崩溃,那么您将不会使用默认规则获取转储,您应该更改规则以包含默认断点列表中存在的ntdll terminateprocess断点。启用此断点的不良影响是,现在即使对于SAFE EXITS(例如工作进程空闲关闭,回收等)也会获得转储,因此您需要检查记录的事件的时间戳并将转储文件与该文件匹配...

如果你粘贴你在debugdiag为w3wp.txt生成的文本文件中看到的最后5-10行会有所帮助。

编辑:在调试器中看到添加Callstack ...

0:065> kL 50
# ChildEBP RetAddr  
00 1a8f291c 74b80947 ntdll!NtTerminateProcess
01 1a8f292c 73e0843d KERNELBASE!TerminateProcess+0x23
02 1a8f29b8 73e07d03 clr!EEPolicy::HandleFatalStackOverflow+0x1ba
03 1a8f29e8 73dca49f clr!EEPolicy::HandleStackOverflow+0x1ac
04 1a8f2a0c 76f500b1 clr!COMPlusFrameHandler+0x9b
05 1a8f2a30 76f50083 ntdll!ExecuteHandler2+0x26
06 1a8f2afc 76f507ff ntdll!ExecuteHandler+0x24
07 1a8f2afc 17732c83 ntdll!KiUserExceptionDispatcher+0xf
08 1a8f309c 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x1b
09 1a8f3184 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
0a 1a8f326c 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
0b 1a8f3354 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
0c 1a8f343c 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
0d 1a8f3524 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
0e 1a8f360c 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
0f 1a8f36f4 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c
10 1a8f37dc 17733104 App_Web_lotdetail_aspx_cdcab7d2_hoxucj_s!Unknown+0x49c