转储诊断

Dump Diagnostics

最近我在 windows Server 2012 中收到以下错误日志。

一些后果,如网站关闭和浏览器中启动 503 错误。

我赶上了 OS 的更新,我一直在寻找这个问题,这让我可以做一些选择,比如:

我不是Windows服务器方面的专家,但想了解情况并收到更多评论。

应用程序日志

Log Name: Application Source: Application Error EventId: 1000

Faulting application name: w3wp.exe, version: 8.0.9200.16384, time stamp: 0x50108835

Faulting module name: clr.dll, version: 4.0.30319.18449, time stamp: 0x528fdca2 Exception code: 0xc00000fd

Fault offset: 0x000000000010c0c5

Faulting process id: 0x474

Faulting application start time: 0x01d05204681c00ea

Faulting application path: c:\windows\system32\inetsrv\w3wp.exe

Faulting module path: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll

Report Id: 49a3bf22-bdf8-11e4-944f-22000afcadb1

Faulting package full name:

Faulting package-relative application ID:

系统日志

WAS

Application pool 'v3.xxxxx.com.br' is being automatically disabled due to a series of failures in the process(es) serving that application pool.

A process serving application pool 'v3.xxxxx.com.br' suffered a fatal communication error with the Windows Process Activation Service. The process id was '4492'. The data field contains the error number.

您尝试的内容不太相关。

0xc00000fd表示堆栈溢出。因此,您需要检查您的代码,看看它是否是由您造成的。如果您能够获得故障转储,则可以提供有关崩溃原因的更多信息。

我用 5 步解决了我的问题:

1) 我安装了一个软件来获取故障转储。在这种情况下,我下载了 DebugDiag Tools.

2) 我按照 post 中的这些说明配置了 DebugDiag 工具 。我不需要安装 WindDbg 和 Symbols。

After the installation it was configured in this way:

  • Selecting a Crash rule
  • Selecting a IIS App pool (w3wp.exe)
  • Selecting the app pool of my application
  • Configuring a Stack over flow exception (0xc00000fd) in Advanced Settings/Exceptions and finishing the setup.

3) 我等待在文件夹位置创建第一个故障转储。 Ex: C:\DebugDiag\Logs 创建故障转储时,我使用 DebugDiag Analysis 从 C:\DebugDiag\Logs[= 打开文件38=] 并创建了 HTML 报告。

4) 在报告中很容易看出问题。在我的例子中,有一个没有停止条件的递归函数。它使 w3wp 进程崩溃。

5)我们的团队修复了错误并解决了问题