IIS 崩溃并重新启动,但未删除小型转储

发布于 2024-11-14 17:08:29 字数 349 浏览 2 评论 0原文

我正在尝试调试一个艰难的场景...在 Web 表单页面上,当我单击提交时,Web 服务器遇到一些错误并重新启动 w3svc 进程。

我没有看到任何堆栈跟踪转储到事件日志中。 Windows 应用程序日志中的唯一条目是:

故障应用程序名称:w3wp.exe,版本:7.5.7600.16385,时间戳:0x4a5bd0eb

故障模块名称:KERNELBASE.dll,版本:6.1.7600.16385,时间戳:0x4a5bdfe0

异常代码:0xe053534f

没有为我创建要附加的迷你转储Windbg 到...

有什么想法如何调试我的问题吗?

I have a tough scenario I'm trying to debug... On a web forms page, when I click submit, the web server hits some error and restarts the w3svc process.

I do not see any stack trace dumped to the event log. The only entry in the Windows Application Log is:

Faulting application name: w3wp.exe, version: 7.5.7600.16385, time stamp: 0x4a5bd0eb

Faulting module name: KERNELBASE.dll, version: 6.1.7600.16385, time stamp: 0x4a5bdfe0

Exception code: 0xe053534f

There is no mini dump created for me to attach windbg to...

Any ideas how to debug my issue?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

扛刀软妹 2024-11-21 17:08:29

我怀疑你做了一个循环调用

public string sMyText
{
   get {return sMyText;}
   set {sMyText = value;}
} 

,比如你调用了 sMyText

或类似的东西

protected override void OnLoad(EventArgs e)
{
  base.OnInit(e);
}

Server.Transfer("TheSamePage.aspx");

在这种情况下,崩溃不称为小型转储。
您可以运行进程资源管理器并查看您的池是否正在占用CPU,直到碰撞 ?

I suspect that you make a loop call like

public string sMyText
{
   get {return sMyText;}
   set {sMyText = value;}
} 

and you call the sMyText

or something like

protected override void OnLoad(EventArgs e)
{
  base.OnInit(e);
}

or something like

Server.Transfer("TheSamePage.aspx");

In this cases the crash is not call the minidump.
Can you run the process explorer and see if your pool is eat the cpu until is crash ?

谜兔 2024-11-21 17:08:29

要为崩溃的应用程序创建内存转储,您可以使用 DebugDiag 或 adplus。两者都会监视进程,并在崩溃发生时生成转储文件。 DebugDiag 还可以分析转储文件并生成问题报告(类似于 WinDbg 中的“!analyze -v”命令。)

可以下载 DebugDiag 这里

您应该会发现 adplus 与 Windows 调试工具一起安装 - 这与包含 WinDbg 的安装程序相同。

To create a memory dump for a crashing application, you can use either DebugDiag or adplus. Either will monitor the process, and generate a dump file when the crash occurs. DebugDiag can also analyze dump files and generate an issue report (similar to the "!analyze -v" command in WinDbg.)

DebugDiag can be downloaded here.

You should find adplus installed with the Debugging Tools for Windows - which is the same installer that contains WinDbg.

腹黑女流氓 2024-11-21 17:08:29

我会使用类似 Procdump 的东西来获取进程时的内存转储
终止并查找异常和调用堆栈。

-t 当进程终止时写入转储。

仅供参考...您在 EventViewer 中看到的是 Watson Bucket,它告诉哪个应用程序和模块存在未处理的异常。从您的日志来看,kernelBase 似乎是错误模块。

I would use something like Procdump to get a memory dump when the process
terminates and look for exception and call-stack.

-t Write a dump when the process terminates.

FYI...what you see in EventViewer is Watson buckets which tells which application and module had an unhandled exception. From your log it looks like kernelBasewas the faulting module.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文