我正在使用supervisor自动重新加载我的node.js,例如
supervisor -w . app.js
但是我无法弄清楚如何让supervisor在debug中运行node.js进程,例如相当于
node --debug app.coffee
有人有任何想法吗?
答案 0 :(得分:24)
这也有效(并且您不需要单独的bash脚本):
supervisor -- --debug app.js
supervisor -- --debug=7070 app.js
答案 1 :(得分:9)
此解决方案适用于* nix:
转到/usr/local/bin
或$ PATH
$ cd /usr/local/bin
使用以下内容创建可执行脚本(例如,node-debug)
#!/bin/bash
node --debug $@
使其可执行:
$ sudo chmod 777 /usr/local/bin/node-debug
现在你可以像这样运行主管:
$ supervisor -x node-debug script.js
P.S。:将其整理:
su
echo '#!/bin/bash
node --debug $@' > /usr/local/bin/node-debug
chmod 777 /usr/local/bin/node-debug
答案 2 :(得分:3)
<击> node-dev 击>
“所有参数都传递给子进程.node-dev --debug server.js将调试你的应用程序,而不是主管本身。”
在$ HOME / nodetest
中创建“test.js”node.js脚本第一个终端(在调试模式下运行节点,debug将侦听端口5858,node-dev将重新加载已更改的文件):
cd $HOME/nodetest
npm install node-dev
node_modules/.bin/node-dev --debug test.js
第二个终端(启动基于WebKit的浏览器的Web检查器,检查器连接到调试器的端口5858并侦听端口8080):
cd $HOME/nodetest
npm install node-inspector
node_modules/.bin/node-inspector
在基于WebKit的浏览器(Chrome,Safari等)中打开此网址:
http://0.0.0.0:8080/debug?port=5858
单击“脚本”并在代码中设置断点。
答案 3 :(得分:3)
- nodejs节点可执行文件有一些您可以设置的有用选项,例如 --debug, - debug-brk和--max-stack-size。使用此标志将选项直接转发到Node.js.
我试过这个并且有效:
主管 - --nodejs --debug app.coffee
您可以添加其他参数:
主管-w。 -n error - --nodejs --debug app.coffee
答案 4 :(得分:0)
-x
标记
supervisor -w . -x 'node --debug' app.js
但这不适用于coffeescript所以你必须使用
supervisor -w . -x 'coffee --debug' app.js