inspector调试工具使用格局,inspector使用格局

付出node.js程序行使的是javascript语言,个中最忙绿的照旧调节和测试,那里介绍一下node-inspector使用方式。具体资料能够看参考资料中的GITHUB文书档案。

支出node.js程序采纳的是javascript语言,在那之中最麻烦的要么调节和测试,那里介绍一下node-inspector使用方法。具体资料能够看参考资料中的GITHUB文书档案。

转:http://www.tuicool.com/articles/Fzyaa2

工具/原料

 

  • node.js

方法/步骤

  1.  

    运用命令$ npm install -g node-inspector
    安装。安装后就足以行使了。之后在指令行中执行“node –debug-brk
    app2.js”。app2.js为你供给调剂的主次的称谓。

    图片 1

  2.  将打开链接后,能够看到调节和测试工具已经加载代码了,在要求安装的地点点击就足以。设置断点的地点在右边会自动加载断点列表。图片 2

  3. 接着再打开贰个指令窗口,执行命令“node-inspector
    &”。执行成功后会突显一个地点,使用浏览器打开这么些地方,浏览器需假如Chrome。

    图片 3

  4.  接着在chrome中再打开多个页签,打开你需求调剂的页面。执行你须求的操作,当执行到安装断点的时候,页面会暂停加载,点击回到原来的node-inspector页面,能够观察调节和测试的音讯。

    图片 4

  5.  把鼠标移动到源码断点的地方上也得以看来变量的音信。

    图片 5

  6.  在调节工具的右手也提供了有个别调节和测试效率,单步进入,撤废断点等作用。

    图片 6

  7. 经过上述成效的应用,大家就足以相比较便利的调节大家的node.js程序了。 

新学习一种技术,肯定会遇到不少坑,我们要求找到那么些坑,弄明白那一个坑出现的因由和在那之中的法则。那种操作就称为调节和测试。

方法/步骤

 

  1. 1

    行职责令$ npm install -g node-inspector
    安装。安装后就足以动用了。之后在命令行中执行“node –debug
    app2.js”。app2.js为您要求调剂的主次的名称。

    图片 7

  2. 2

    跟着再打开四个发令窗口,执行命令“node-inspector
    &”。执行成功后会突显一个地址,使用浏览器打开这么些地点,浏览器需假设Chrome。

    图片 8

  3. 3

    将打开链接后,能够看出调节和测试工具已经加载代码了,在急需设置的地点点击就足以。设置断点的地点在左侧会自动加载断点列表。

    图片 9

  4. 4

    紧接着在chrome中再打开三个页签,打开你需求调剂的页面。执行你必要的操作,当执行到安装断点的时候,页面会暂停加载,点击回到原先的node-inspector页面,可以看看调节和测试的新闻。

    图片 10

  5. 5

    把鼠标移动到源码断点的职分上也能够看出变量的新闻。

    图片 11

  6. 6

    在调节和测试工具的左侧也提供了有的调节成效,单步进入,裁撤断点等作用。

    图片 12

  7. 7

    由此上述功效的采纳,大家就能够相比方便的调节和测试我们的node.js程序了。

程序调节和测试的章程和工具无独有偶,在那边本身总计一下自家在念书nodejs的经过中,学到的和动用的调节和测试方法。

log

在JavaScript代码中平素console.log,能够在控制奥兰多打字与印刷新闻。不过这么的效益太枯燥,项目中模块很多,功效紊乱,借使没有3个约定好的console.log方法,很不难就招致打字与印刷的音讯格外无规律,可读性很差。

nodejs有一个debug模块,提供:

定义log模块,选取特定模块log输出

模块文字颜色高亮

log时间记下

出口log到文件等成效

首先

npm init、npm install debug –save  新建一个nodejs项目并安装debug模块

下一场新建

app.js

vardebug=require(“debug”)(“mydebug:http”),    work=require(“./work”),   
http=require(“http”);http.createServer(function(req,res){debug(req.method
+’ ‘+ req.url);   
res.end(‘hello\n’);}).listen(3000,function(){debug(“listening”);});

work.js

var debug=require(“debug”)(“mydebug:work”);setInterval(function(){   
debug(“doing some work @ %s —— %s”,new Date().getTime(),”with
supervisor”);},2000);

地方多个文件中分别创设了 mydebug:http  和 mydebug:work
多个log模块,在运行项指标时候能够布置要打字与印刷的log模块,那么些布局是扶助通配符匹配的

在linux中启动:DEBUG=mydebug:* node
app.js在windows中启动setDEBUG=mydebug:* & node app.js

如此那般就足以见见分歧模块的日志打字与印刷了,同时也足以观察日志输出时间。

在浏览器中做客 localhost:两千 也足以看到打字与印刷出的访问消息

图片 13

除此以外debug模块还提供把日记输出到文件的法力

setDEBUG=mydebug:*  &  node app.js mydebug:work>debug.log

nodejs
debug模块文书档案:https://github.com/visionmedia/debug

debug

光有log还不够,当程序现身难题时经过log能够一定到不当地方,不过当大家想查看错误现场的变量时,log就无法了,一般意况下大家不会把富有的变量都打字与印刷出来。此时就须要断点的效果了,在程序里边打上断点,直接固定到错误地点,分析错误现场肯定错误原因。

nodejs内部提供叁个debug机制,能够让程序进入debug形式,供开发者一步一步分析代码发现标题。

共有3中运维参数可以让程序进入debug形式

nodedebugapp.jsnode –debugapp.jsnode –debug-brk app.js

3种情势在调节和测试格局上有一定分化。

node debug app.js

1.那种方法运维程序,程序会进来debug情势,并运营到起步文件的第一行就止住,等待开发者下发往下走的命令

2.那种方法运维程序,直接在此时此刻cmd中跻身调节和测试情势

node –debug app.js

1.这种方法运营程序,程序会跻身debug方式,并运营完全数代码。那种运转格局往往用来程序运营的经过中不须求调剂,通过接触时间进入回调函数的图景,比如在有些http请求中打上断点,等待客户端访问后进入断点

2.那种方式运行程序,会打开一个TCP的端口监听,在本cmd中不进去调节和测试形式,供给别的开启终极用node
debug 命令连接调节和测试端口

命令为 node debug localhost debug端口

或者   node debug p node进程id

node –debug-brk app.js

1.那种办法运行程序,程序会跻身debug情势,不过不会运维代码,直到有3个终端连接到了debug端口,才起来实践代码,并在第①行进入断点

2.那种措施运行程序,会敞开1个TCP的端口监听,在本cmd中不进来调节和测试格局,须要别的开启终极用node
debug 命令连接调节和测试端口

跻身debug形式后,能够通过有些限令来安装断点、撤消断点以及控制造进程序执行流程

命令文书档案:https://nodejs.org/api/debugger.html\#debugger\_commands\_reference

流程序控制制相关

cont,c- Continue execution

next,n- Step next

step,s- Step in

out,o- Step out

pause- Pause running code (like pause button in Developer Tools)

断点设置撤除有关

setBreakpoint(),sb()- Set breakpoint on current line

setBreakpoint(line),sb(line)- Set breakpoint on specific line

setBreakpoint(‘fn()’),sb(…)- Set breakpoint on a first statement in
functions body

setBreakpoint(‘script.js’, 1),sb(…)- Set breakpoint on first line of
script.js

clearBreakpoint(‘script.js’, 1),cb(…)- Clear breakpoint in script.js
on line 1

变量查占卜关

backtrace,bt- Print backtrace of current execution frame

list(5)- List scripts source code with 5 line context (5 lines before
and after)

watch(expr)- Add expression to watch list

unwatch(expr)- Remove expression from watch list

watchers- List all watchers and their values (automatically listed on
each breakpoint)

repl- Open debugger’s repl for evaluation in debugging script’s context

repl方式下能够输入变量名查看变量内容

node debug

图片 14

从第三行代码伊始进入断点,命令n进入下一行

node –debug

cmd1  开启调节和测试端口

图片 15

cmd2   连接调节和测试端口

图片 16

设置断点,撤消断点

图片 17

cmd1 过了一分钟才继续打字与印刷

图片 18

用经过id的章程连接调节和测试模块

图片 19

上图能够见到pid为4436

图片 20

repl模式

图片 21

调剂相关的工具和模块

地点的调节进程仍然略显麻烦,有局地工具和node模块能够用来支援调试。

supervisor

supervisor是三个node模块,用来运转node项目。

supervisor能够监督一些文本,当那几个文件产生变化时自动刷新程序,不用再行开动node程序。

当程序崩溃时,supervisor会重新开动程序。

还有其它的一部分配置,能够在supervisor文书档案中看出https://github.com/petruisfan/node-supervisor/

安装supervisor

npminstall -g supervisor

督察work.js的成形并运转node程序

图片 22

把work中的debug音讯修改一下

图片 23

在职责管理器中得了app.js的node进度,能够见到supervisor自动重启了app.js的历程

图片 24

webstorm

webstorm提供了比较有利的debug工具

在菜单中  run-debug-app.js

能够直接在行号的地点点击,打上断点

图片 25

浏览器访问 localhost:2000,进入断点

图片 26

能够看看webstorm提供的有的调剂工具

图片 27

实际上webstorm的调节和测试功用也是依据–debug-brk来落实的,使用了63797端口来调节和测试

node-inspector

设若不爱好webstorm的调节工具,还足以应用大家熟练的chrome调节和测试工具来调节node代码,但是要求设置2个node模块——node-inspector

npminstall -g node-inspector

设置完毕后,开启2个node调节和测试端口 12345

图片 28

然后新开三个cmd,开首3个node-inspector调试服务,连接受刚刚拉开的调节端口

图片 29

依照提醒访问地址,即可使用大家比较熟谙的chrome的调节和测试工具来调节nodejs代码

图片 30

调节的技能有广大,很多细节难题都急需分裂的调节技巧来完毕,以往用到新的了再补充吧~