轩枫阁

首页 / 授人以渔 / Node / Node inspect debugger调试工具

Node inspect debugger调试工具

特性

Node V8.0开始支持使用Chrome Devtools调试工具来调试Node,非常的有用。

Debugger

稳定性:2 稳定

Debugger是基于TCP协议和内置调试客户端可访问的进程外Node.js调试实用程序。

可以在启动Node.js的时候,加上inspect参数,后跟脚本路径,进行调试。

node运行myscript.js文件,此时Debugger 会使用WebScoket默认在本地监听9229端口。启动成功后,可以在Chrome输入面板输出的随机URL(每次运行Node,URL都会变化)

Node.js的客户端调试工具并不是全功能的调试器,但可以进行简单的step(步入步出)和inspection(检查)。

可以在代码行中使用 debugger 进行断点调试

当debugger运行时,第4行代码会有个断点

next命令为继续执行下一行代码,repl 命令可以在当前执行上下文环境进行调试,比如查看变量值。

在没有输入命令时,按下回车键,将会执行上一条命令。

输入help可以查看更多可用命令。

Watchers

可以在调试时watch表达式及变量的值。

在每个breakpointwatchers list中的每一条表达式会在当前执行上下文中即时显示结果。

开始监听:watch('my_expression')

取消监听:unwatch('my_expression')

监听列表:watchers

命令

Stepping

cont, c:继续执行

next, n:Step next

step, s:Step in

out, o:Step out

pause:pause runing code

Breakpoints

setBreakPoint(), sb():在当前行设置断点

setBreakPoint(line), sb(line):在指定代码行设置断点

setBreakPoint('fn()'), sb(...)
:在functions里的第一个语句设置断点

setBreakPoint('script.js', 1), sb(...):在script.js的第一行代码设置断点

clearBreakPoint('script.js', 1):取消设置script.js对应行的断点

断点也可以对尚未加载的file(module)进行设置

Information

backtrace, bt:输出当前执行帧的回溯

list(5):列出当前代码的上下5行代码

watch(expr):添加watch

unwatch(expr):取消watch

watchers:列出watchers

repl:在当前执行上下文环境进行调试

exec expr:在当前执行上下文中执行表达式

执行控制

run:Run script

restart:Restart script

kill:Kill script

其它

scripts:列出所有已加载的scripts

version:显示V8的版本

高级用法

上面的介绍仅是在面板中调试,还是极为不便,如果像前端调试页面那样能够使用Chrome DevTools面板调试就非常方便了。

作为专为Node.js集成的V8调试工具,V8 Inspector支持将Chrome Devtools附加到Node.js实例进行调试,它使用的协议是Chrome Debugging Protocol

可以在启动Nide.js应用程序时,通过 --inspect 参数来启动V8 Inspector

如果需要在首行程序代码设置断点,可以传递参数 --inspect-brk

在上面的示例中,URL结尾的UUID dc9010dd-f8b8-4ac5-a510-c1a114ec7d29是及时生成的,不同的调试会话中都有所不同。

技巧

1. 端口被占用

Debugger默认使用9229端口,可以指定端口

node --inspect=9222

端口被占用时提示如下

2. 退出debug

键入两次CTRL+C或者输入.exit

3. 查看Chrome调试信息

有时候在Node启动时,可能会输出很多的日志,导致刷掉Debugger调试URL无法复制。

此时可以在Chrome中访问 chrome://inspect/#devices ,找到相关的页面,点击Inspect打开调试面板

英文文档:https://nodejs.org/api/debugger.html

本文标题:Node inspect debugger调试工具 - 轩枫阁

转载请务必注明出处,欢迎分享

如果觉得我的文章对您有用,请随意打赏
赞  赏
赞赏作者 轩枫-ivan
¥ 6.66
换个金额 使用微信扫一扫赞赏
  • 6.66
  • 8.88
  • 16.8
  • 2.33
  • 52.0
  • 20.0
  • 自定义
  • 10.0
1/451
3/451

相关文章

文章评论

  • 暂无评论

纸飞机许愿

x

钢琴节奏

请选择弹奏的曲谱

    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 1
    • 2

    [返回曲谱列表]