如何在 Google Chrome 中调试选项卡崩溃

Posted

技术标签:

【中文标题】如何在 Google Chrome 中调试选项卡崩溃【英文标题】:How do I debug a tab crash in Google Chrome 【发布时间】:2012-06-09 09:50:41 【问题描述】:

我们有一个单页应用程序会随机崩溃整个浏览器选项卡。我观察了一个多小时的记忆,但它并没有增加,一切看起来都很好。过了一段时间后,标签突然崩溃了。

我在

中查找了崩溃转储
C:\Users\cburgdorf\AppData\Local\Google\CrashReports

但是 Chrome-last.dmp 已经完全过时了。是否有任何地方可以查找有关崩溃的其他信息?更何况它是一头难以繁殖的野兽。

我想知道我是否可以在连接了 windbg 的情况下启动 Chrome 并等待(2 小时左右 sigh)标签崩溃。这行得通吗?

更新

你们所有人都给出了很好的答案,并为寻找错误提供了有价值的建议。最后,我能够使用以下步骤重现该错误并获得清晰的故障转储:

1.) windbg.exe -o chrome.exe
2.) reproduce crash
3.) .dump /ma C:\Path\To\A\CrashDump\File.dmp (as Paul pointed out)
4.) end session and load the crash dum with windbg
5.) use !analyze -v to extract valuable information

【问题讨论】:

故障转储对调试为什么我的 javascript 会导致 chrome 崩溃有用吗?似乎转储将是相当低级的,我不确定我什至可以找出 javascript 运行时在做什么。 不,但您至少可以了解崩溃的性质。例如。如果它与内存泄漏有关,99% 的时间都是这种情况。 启动前chrome抛出异常怎么办?那我该如何调试呢? 【参考方案1】:

一旦 WinDbg 侵入,使用此命令创建完整的故障转储:

.dump /ma C:\Path\To\A\CrashDump\File.dmp

【讨论】:

由于某种原因,.dump 命令在我的系统上似乎不存在,那么我该如何安装呢? 我也不明白该命令应该是什么。显然,它不是 Windows 的一部分,所以值得-1 你读过“Open Windbg”部分吗?我把你的注意力放在细节上 -1 我在您的回复中看不到任何“Open Windbg”部分。不过,我已经想通了。不幸的是,在安装了我希望成为windbg的任何东西之后,我仍然无法从命令行运行该程序。我试图搜索它,但也失败了。【参考方案2】:

如果您只想分析特定标签,您应该按照以下步骤操作。

打开 Chrome 的任务管理器(菜单中的查看背景页面选项)。 右键单击网格并激活进程 ID 列。 并将 windbg 附加到此 pid。

【讨论】:

【参考方案3】:

按照http://www.chromium.org/for-testers/bug-reporting-guidelines/reporting-crash-bug 上的说明报告渲染器崩溃,以便 Chromium 开发人员对其进行调试。

【讨论】:

我就是这么做的。不幸的是,没有崩溃转储。但是,我会尝试直接连接windbg运行chrome。也许我可以通过这种方式获取故障转储。 我不相信 chrome 开发人员会修复任何东西,我想自己在我的 javascript 代码中修复它。【参考方案4】:

您可以尝试在 chrome 中使用 firebug 并给我一个日志吗? http://getfirebug.com/wiki/index.php/Command_Line_API

更新。您需要使用调试选项启动 chrome。

  --enable-logging --v=1

【讨论】:

标签崩溃后我应该如何获取日志。它可以写入文件系统吗?我猜当标签崩溃时,它也会关闭萤火虫。内置控制台也是如此,一旦选项卡崩溃,它会关闭包括控制台在内的整个开发人员工具。 好的,我现在启用了日志记录。将等待另一个崩溃发生。不确定您对第二个链接的意思。

以上是关于如何在 Google Chrome 中调试选项卡崩溃的主要内容,如果未能解决你的问题,请参考以下文章

如何使用Google浏览器自带的调试工具

调试 React-Native 应用程序时如何在 Chrome devtools 中查看 React 选项卡?

如何设置我的纬度和经度以使用 Google Chrome 调试 Geolocation API?

使用 Google Chrome 逐行调试 Javascript

使用chrome调试微信浏览器页面

20171101晚google chrome 安全上网