在使用node.js的调试器时,我一直在使用node --debug-brk XXXX.js
运行节点进程进行调试。令人讨厌的是,如果我不小心断开连接,我必须重新开始这个过程。有没有办法重新连接到调试器?当我尝试(通过intelliJ)时,它根本就不会重新连接。
答案 0 :(得分:2)
尝试使用node-inspector,它会在浏览器中打开时重新连接到节点服务器,但调试将从启动开始。
答案 1 :(得分:1)
您还可以使用nodewebkit,这样可以轻松调试代码。
答案 2 :(得分:1)
作为V8的一部分发布的Google Chrome Developer Tools调试器可用于调试Node.js脚本。有关其工作原理的详细说明,请参见Node.js GitHub wiki。
替代方案
Node.js版本0.3.4+具有内置调试支持。
node debug script.js
手动:http://nodejs.org/api/debugger.html
使用Profiler
进行分析注意:不推荐使用探查器模块,并且可能无法使用节点的版本0.12
全球安装npm install -g profiler
使用node --prof
开始您的流程,这将创建一个v8.log文件
运行~/.nvm/v0.8.22/lib/node_modules/profiler/tools/build-nprof
运行~/.nvm/v0.8.22/lib/node_modules/profiler/nprof
这将读取v8.log配置文件并为您提供良好的输出。
使用NodeTime
的CPU和内存分析安装到您的应用程序npm install nodetime
在您的申请中加入require('nodetime').profile()
按照它将输出到控制台的说明
或者,您可能希望使用基于nodetime的look,但它不会将数据发送到nodetime.com。
进行调试的开发人员工具全球安装:npm install -g node-inspector
以调试模式运行您的应用程序:node-debug your/node/program.js
(或附加到正在运行的进程:kill -s USR1 <your node process id>)
在另一个终端窗口中运行node-inspector:node-inspector
打开http://127.0.0.1:8080/debug?port=5858
(或通过将127.0.0.1替换为主机远程调试;确保端口8080已打开)。
安装到您的应用程序npm install webkit-devtools-agent
在您的申请中加入agent = require('webkit-devtools-agent')
激活座席:kill -SIGUSR2 <your node process id>