如何调试Node.js服务器应用程序?
现在,我主要使用如下打印语句的警报调试:
sys.puts(sys.inspect(someVariable));
必须有更好的调试方法。我知道Google Chrome有一个命令行调试器。这个调试器也适用于Node.js吗?
如何调试Node.js服务器应用程序?
现在,我主要使用如下打印语句的警报调试:
sys.puts(sys.inspect(someVariable));
必须有更好的调试方法。我知道Google Chrome有一个命令行调试器。这个调试器也适用于Node.js吗?
当前回答
自6.3版起,Node拥有自己的内置GUI调试器(使用Chrome的DevTools)
只需传递检查器标志,就会向您提供一个指向检查器的URL:
node --inspect server.js
您也可以在第一行通过--inspect brk。
其他回答
节点检查器可以节省一天!从任何支持WebSocket的浏览器使用它。断点、分析器、实时编码等……真是太棒了。
安装时使用:
npm install -g node-inspector
然后运行:
node-debug app.js
调试
Joyent指南调试器节点检查器Visual Studio代码云9括号
分析
节点--教授/应用程序.jsnode—prof进程/生成的日志文件
堆转储
使用Chrome开发者工具的节点堆转储
火焰图
0倍jam3/devtool然后是Chrome开发者工具火焰图Dtrace和StackVis-仅在SmartOS上受支持临床医师
跟踪
使用TraceGL的交互式堆栈跟踪
登录中
输出调试信息的库
毛虫示踪剂潦草
增强堆栈跟踪信息的库
朗约翰
标杆管理
Apache工作台:ab-n 100000-c 1http://127.0.0.1:9778/wrk公司
另外
查出优势家伙Google跟踪框架保罗·爱尔兰指南
遗产
这些功能可以使用,但不再维护或不再适用于现代节点版本。
https://github.com/bnoordhuis/node-profiler-替换为内置调试https://github.com/c4milo/node-webkit-agent-由节点检查器替换https://nodetime.com/-失效
使用Chrome版本67.0.3396.62(+)
运行节点应用程序
node--inspect brk=0.0.0.0:9229 server.js(服务器js文件名)
在chrome中浏览应用程序,例如“localhost:port”打开DevTools。单击响应设备图标旁边的节点图标。
将出现另一个DevTools窗口,专门用于调试节点应用程序。
如果您使用的是Atom IDE,则可以安装节点调试器包。
从“文件”->“首选项”->“设置”->“搜索自动附加”并将其设置为“打开”,打开控制台(ctrl+*)或从菜单“终端”->“新建终端”,在代码中设置断点,键入命令
node --inspect <name of your file>
这将启动调试,VS代码将显示调试菜单。
注意:如果使用节点集群工作线程,自动附加也非常有用。