Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
调试Kibana backend Node.js代码_Node.js_Kibana_Kibana 4_Node Inspector - Fatal编程技术网

调试Kibana backend Node.js代码

调试Kibana backend Node.js代码,node.js,kibana,kibana-4,node-inspector,Node.js,Kibana,Kibana 4,Node Inspector,如何调试后端源代码 我猜想,节点检查器可以使用。以及package.json文件在npm start运行调试器所需的一些额外配置。但是,我无法找出正确的配置语法 NODE_OPTIONS=--debug bin/kibana --dev 如果要在启动前中断: NODE_OPTIONS="--debug --debug-brk" bin/kibana --dev 或者,您可以在调用npm start时设置相同的变量: NODE_OPTIONS=--debug npm start 你会看到:

如何调试后端源代码

我猜想,
节点检查器
可以使用。以及
package.json
文件在
npm start
运行调试器所需的一些额外配置。但是,我无法找出正确的配置语法

NODE_OPTIONS=--debug bin/kibana --dev
如果要在启动前中断:

NODE_OPTIONS="--debug --debug-brk" bin/kibana --dev
或者,您可以在调用
npm start
时设置相同的变量:

NODE_OPTIONS=--debug npm start
你会看到:

Debugger listening on port 5858
然后,可以通过运行
节点检查器
并打开来使用节点检查器

如果正在调试远程服务器,则可以在服务器上运行
节点检查器
,并通过SSH转发端口8080,也可以在本地运行
节点检查器
,并通过SSH转发端口

编辑:如评论中所述,可能需要编辑源代码并添加
调试器在开始时,否则断点可能无法正常工作,即使使用
--debug brk
。但不确定原因。

添加
$NODE\u选项--无警告--检查


启动kibana服务器并访问日志中显示的链接,如“chrome”链接-devtools://devtools/remote/serve_file/@521e5b7e2b7cc66b4006a8a54cb9c4e57494a5ef/inspector.html?实验=true&v8only=true&ws=localhost:5858/node“然后,您将在“源代码”选项卡中找到后端代码,您可以像调试前端代码一样调试它。

它可以工作!非常感谢。但是代码执行不会在断点上中断。你能给我一个为什么的提示吗?这是一个我在使用node inspector时有时也会遇到的问题,有时问题是调试对象或调试器上的旧node.js版本,或者旧node inspector版本,或者两者都有……好吧,我找到了为什么它对我不起作用的原因。首先,调试端口可能会在Kibana重新启动时更改。在我的情况下,它变为
5861
。因此,我使用以下URL访问调试控制台:。第二,你必须把
调试器位于要调试的源代码之前的新行上。等待2-3分钟,等待控制台加载。然后,在中断后,您可以通过控制台web界面添加新的断点。是的,它通过
--debug brk
中断。但是,当我添加一个新断点并按“继续脚本执行”
时,什么也没有发生。因此,我最后使用了
调试器
节点\u选项=--debug npm start