无法使用 chrome 检查器为 nodejs 拍摄堆快照

Posted

技术标签:

【中文标题】无法使用 chrome 检查器为 nodejs 拍摄堆快照【英文标题】:Can't take heap snapshot with chrome inspector for nodejs 【发布时间】:2020-09-01 06:45:00 【问题描述】:

我使用node --inspect=0.0.0.0:9229 app.js 在远程 Kubernetes 集群中运行我的 nodejs 8.9.4 应用程序(不是服务器)。然后我在我的机器上端口转发 9229。最后,我访问了 chrome 检查器,我可以看到我的源代码。我尝试使用--inspect-brk 运行,并成功调试了我的应用程序。但我不能拍摄堆快照:按钮被禁用。我不明白为什么。 Disabled take snapshot button

【问题讨论】:

【参考方案1】:

我的建议是:

    将chrome更新到最新版本并重新启动(也可以下载Chrome Canary)

    重启节点

    打开chrome://inspect并添加localhost:端口号-9229update connection in chrome。

看看:debugging-nodejs,memory-leaks-nodejs。

【讨论】:

谢谢。我终于将我的节点版本升级到 10,然后我现在可以使用相同的 Chrome 版本和相同的进程拍摄快照。 @Antoine 所以你不能用旧版本的 Node 来做到这一点?我也在 Node 8.9.4 上,似乎无法进行远程调试。 不抱歉,我必须升级我的节点版本。

以上是关于无法使用 chrome 检查器为 nodejs 拍摄堆快照的主要内容,如果未能解决你的问题,请参考以下文章

无法通过 XPath 选择器为没有名称或 ID 的类型文本找到元素

Chrome 73:无法再使用 Dedicated DevTools for Node 调试 NodeJS

Safari Web 检查器为空白

json对象上的多属性检查三元运算符在nodejs中不起作用,而它在google chrome控制台中工作

chrome 检查更新时出错:无法启动更新检查

Chrome 上传“太快”无法检查