在supervisor中debuggingnode.js应用程序
我正在使用主pipe自动重新加载我的node.js,例如
supervisor -w . app.js
然而,我不能找出如何让主pipe在debugging中运行node.js进程,例如相当于
node --debug app.coffee
任何人有任何想法?
这个解决scheme适用于* nix:
转到/usr/local/bin
或$ PATH中的任何其他目录
$ cd /usr/local/bin
用下面的内容创build一个可执行的脚本(比如node-debug)
#!/bin/bash node --debug $@
为了使其可执行:
$ sudo chmod 777 /usr/local/bin/node-debug
现在你可以像这样运行主pipe:
$ supervisor -x node-debug script.js
PS:四舍五入:
su echo '#!/bin/bash node --debug $@' > /usr/local/bin/node-debug chmod 777 /usr/local/bin/node-debug
这也适用(你不需要单独的bash脚本):
supervisor -- --debug app.js supervisor -- --debug=7070 app.js
从CoffeeScript站点 :
–nodejs节点可执行文件有一些有用的选项,例如–debug,–debug-brk和–max-stack-size。 使用此标志将选项直接转发到Node.js.
我试过这个,它的工作原理:
主pipe – –nodejs –debug app.coffee
你可以添加像这样的其他参数:
监督-w。 -n错误 – –nodejs –debug app.coffee
节点开发
在Github上的node-dev
“所有的参数都传递给subprocess,node-dev –debug server.js将debugging你的应用程序,而不是pipe理员本身。”
在$ HOME / nodetest中创build一个“test.js”node.js脚本
第一个terminal(在debugging模式下运行节点,debugging将监听端口5858,node-dev将重新加载更改的文件):
cd $HOME/nodetest npm install node-dev node_modules/.bin/node-dev --debug test.js
第二个terminal(启动基于WebKit的浏览器的Web检查器,检查器连接到debugging器的端口5858并监听端口8080):
cd $HOME/nodetest npm install node-inspector node_modules/.bin/node-inspector
在基于WebKit的浏览器(Chrome,Safari等)中打开此URL:
http://0.0.0.0:8080/debug?port=5858
点击“脚本”并在您的代码中设置断点。
使用node-supervisor
github页面上logging的-x
标志
supervisor -w . -x 'node --debug' app.js
但这不适用于咖啡,所以你必须使用
supervisor -w . -x 'coffee --debug' app.js