如何调试Node.js应用程序?内置的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何调试Node.js应用程序?内置的相关的知识,希望对你有一定的参考价值。

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

现在我主要使用这样的打印语句进行警报调试:

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

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

答案

node-inspector可以拯救这一天!在任何支持WebSocket的浏览器中使用它。断点,分析器,实时编码等......真的很棒。

安装它:

npm install -g node-inspector

然后运行:

node-debug app.js
另一答案

Node.js Tools for Visual Studio 2012或2013包含一个调试器。 here概述“用于Visual Studio的Node.js工具包括对调试节点应用程序的完全支持。”作为Node.js的新手,但有.NET背景,我发现这是一个调试Node.js应用程序的好方法。

另一答案

Visual Studio Code有非常好的Node.js调试支持。它是免费的,开源的和跨平台的,可在Linux,OS X和Windows上运行。

你甚至可以调试grunt and gulp tasks,如果你需要...

另一答案

我写了一个不同的方法来调试Node.js代码,这个代码很稳定且非常简单。它可以在https://github.com/s-a/iron-node上找到。

一个开源的跨平台可视化调试器。

安装:

npm install iron-node -g;

调试:

iron-node yourscript.js;

另一答案

如果您使用的是Atom IDE,则可以安装node-debugger软件包。

另一答案

我创建了一个名为pry.js的简洁小工具,可以帮助你。

在代码中的某处放置一个简单的语句,正常运行脚本,节点将暂停当前线程,使您可以访问所有变量和函数。随意查看/编辑/删除它们!

pry = require('pryjs')

class FizzBuzz

  run: ->
    for i in [1..100]
      output = ''
      eval(pry.it) # magic
      output += "Fizz" if i % 3 is 0
      output += "Buzz" if i % 5 is 0
      console.log output || i

  bar: ->
    10

fizz = new FizzBuzz()
fizz.run()
另一答案

使用Chrome版本67.0.3396.62(+)

  1. 运行节点应用

node --inspect-brk = 0.0.0.0:9229 server.js(server js filename)

  1. 在Chrome中浏览您的应用,例如“本地主机:端口”
  2. 打开DevTools。
  3. 单击响应设备图标旁边的节点图标。

enter image description here

将会有另一个DevTools窗口专门用于调试节点应用程序。

enter image description here

另一答案

Node.js中有内置的命令行debugger client。 Cloud 9 IDE也非常好(视觉)debugger

另一答案

Visual Studio Code将为我们的调试工作。

另一答案

我为了那些不知道从哪里开始的人使用Node.js debugging primer放了一个短的node-inspector

另一答案

如果你需要一个强大的Node.js日志库,Tracer https://github.com/baryon/tracer是一个更好的选择。

它输出带有时间戳,文件名,方法名,行号,路径或调用堆栈,支持颜色控制台以及支持数据库,文件,流传输的日志消息。我是作者。

另一答案

调试

剖析

  1. node --prof ./app.js
  2. node --prof-process ./the-generated-log-file

Heapdumps

Flamegraphs

追踪

记录

输出调试信息的库

增强堆栈跟踪信息的库

标杆

其他

遗产

这些用于工作但不再维护或不再适用于现代节点版本。

另一答案

假设您的计算机上安装了node-inspector(如果没有,只需键入'npm install -g node-inspector'),您只需运行:

node-inspector & node --debug-brk scriptFileName.js

并将URI从命令行粘贴到WebKit(Chrome / Safari)浏览器中。

另一答案

只是为了完整性:

以上是关于如何调试Node.js应用程序?内置的的主要内容,如果未能解决你的问题,请参考以下文章

青训营Node.js基础 - Web应用开发 - 开发调试 - 线上部署

node.js调试方法

如何用最好的工具来调试node.js

调试 node.js 程序

如何使用源映射远程调试 Node.js 应用程序(使用 WebStorm)

如何在node.js中正确调试简单的Prom?