使用node-inspector调试node.js

gen*_*wip 68 node.js node-inspector

我正在尝试使用node-inspector调试我的nodejs应用程序.但Google Chrome不会显示代码.

我正在使用以下,

Node.js:v0.10.26

快递:4.0.0

节点检查器:v0.7.3

谷歌浏览器版本:34.0.1847.131

这就是我正在做的启动调试器..

$ node-inspector
Node Inspector v0.7.3
Visit http://127.0.0.1:8080/debug?port=5858 to start debugging.
Run Code Online (Sandbox Code Playgroud)

在另一个控制台中

$ node --debug app.js 
debugger listening on port 5858
$
Run Code Online (Sandbox Code Playgroud)

然后启动谷歌Chrome并转到

http://127.0.0.1:8080/debug?port=5858
Run Code Online (Sandbox Code Playgroud)

它打开了节点检查器,但没有任何代码.所有窗口都是空的.

注意到我没有得到'快速服务器侦听端口3000'

根据节点检查所有尝试无法连接到节点但没有运气

无法解决我所缺少的问题.很高兴你有任何建议..所以我可以在谷歌浏览器中调试我的Node.js应用程序.

Che*_*hev 121

尝试运行node --debug-brk app.js而不是仅仅运行--debug.在节点检查程序挂钩到节点进程之前,您的应用程序可能没有暂停.使用--debug-brk将强制节点在应用程序的第一行中断并等待调试器附加到进程.加载node-inspector Web界面是导致节点检查器附加到节点进程的原因; 这就是您在查询字符串中包含节点调试端口的原因(localhost:8080/debug?port = 5858).您告诉node-inspector它应该连接到哪个端口并将其附加到.

这是我放在一起的动画gif,显示了一个完整的安装和运行节点检查器.

在gif我使用--debug标志,因为我没有调试任何在启动时运行的代码.我在请求处理程序中进行调试,该处理程序仅在请求页面时触发.因此,刷新页面会导致节点检查器在该行上中断.

我不久前还组织了一个15分钟的YouTube教程.

http://youtu.be/03qGA-GJXjI

我希望有所帮助!


Jer*_*ony 22

node-inspector默认尝试在启动调试窗口之前预加载所有代码.我有实例,节点检查器因为这个预加载而永远挂起.幸运的是,新版本可以选择停止预加载,从而使检查员加载更快.

尝试 node-inspector --no-preload


elm*_*mpp 6

标准远程调试在节点6.5中完全中断.然而,它被新的内部节点功能所取代

$ node --inspect --debug-brk build/server/server.js
Debugger listening on port 9229.
Warning: This is an experimental feature and could change at any time.
To start debugging, open the following URL in Chrome:
    chrome-devtools://devtools/remote/serve_file/@62cd277117e6f8ec53e31b1be58290a6f7ab42ef/inspector.html?experiments=true&v8only=true&ws=localhost:9229/node
Debugger attached.
Run Code Online (Sandbox Code Playgroud)

请参阅此处 - http://arveknudsen.com/?p=346%3Fpage_id%3D346&print=pdf - 了解更多信息