![在 Chrome 中调试“Aw, Snap!”错误](https://linux22.com/image/1440595/%E5%9C%A8%20Chrome%20%E4%B8%AD%E8%B0%83%E8%AF%95%E2%80%9CAw%2C%20Snap!%E2%80%9D%E9%94%99%E8%AF%AF.png)
我学这相关问题,但仍然困惑。
我有一个应用程序定期显示“Aw,Snap!”错误屏幕,为了调试它,我执行以下操作:
- 启动 Chrome 并启用详细日志记录
- 导致标签页崩溃
- 找到调试文件(在 Mac 上,~/Library/Application Support/Google/Chrome/chrome_debug.log)
- 检查文件中是否存在信息性错误
但我找不到任何与崩溃相关的信息。这很令人惊讶。我期望有一些ERROR
包含大量详细信息的突出级别日志条目。
我希望在“Aw, Snap!”选项卡崩溃的日志中看到什么?我找对地方了吗?如果没有,我可以在哪里获得崩溃详细信息?
答案1
如果在运行时日志文件中未发现任何错误日志记录(--enable-logging --v=1
),尝试从命令行运行 Chrome,有时它应该显示更多内容。
在 macOS 上,要显示来自 Chrome 的日志,您可以运行以下命令:
log stream --level debug --predicate 'processImagePath contains "Google"'
或者运行安慰应用程序。如果没有显示错误,请检查是否有任何崩溃转储(位置应打印在日志中)。在安慰应用程序,崩溃文件可以在用户报告部分(或直接在~/Library/Logs/DiagnosticReports
文件夹中)。
如果你找到相关的 Chrome 崩溃文件,请检查哪个线崩溃并找到其堆栈跟踪,以指出原因。
如果堆栈跟踪仅包含内存地址,则有两种可能性:
- 报告问题至Chrome 错误追踪系统包括您上传的本地崩溃报告 ID(参见:)
chrome://crashes/
,以便 Chrome 维护人员可以使用调试符号进行翻译。 - 从源代码编译 Chrome(需要很长时间),然后直接从终端之后,每个“Aw, Snap!”错误都应该有完整的堆栈跟踪,包括发生错误的源代码文件中的函数和行。
也可以看看: