如何调试Node.js服务器应用程序?

现在,我主要使用如下打印语句的警报调试:

sys.puts(sys.inspect(someVariable));

必须有更好的调试方法。我知道Google Chrome有一个命令行调试器。这个调试器也适用于Node.js吗?


当前回答

Theseus是Adobe research的一个项目,它允许您在开源编辑器Brackets中调试Node.js代码。它有一些有趣的特性,如实时代码覆盖、追溯检查、异步调用树。

其他回答

有一个新的开源Nodeclipse项目(作为Eclipse插件或EnideStudio):

Nodeclipse在2013年Eclipse Top 10 NEW Plugins中排名第一。它使用了一个经过修改的V8调试器(来自Google Chrome Developer Tools for Java)。

Nodeclipse是每个月初发布的免费开源软件。

使用node js的VS代码开发人员专用。启用内置调试

文件>首选项>设置>在搜索框中键入“自动附加”并设置调试器应如何附加[仅首选项WithFlag]

说魔术,你应该看到

使用--inspect您应该与代码一起运行节点程序:)

提示:您也可以在没有--inspect的情况下运行,方法是启用始终筛选

调试

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/-失效

使用此命令

DEBUG_LEVEL=all node file.js
DEBUG=* node file.js
node file.js --inspect

IntelliJ在Node.js上运行得很好。

此外,IntelliJ还支持“代码协助”。