调试 Node.js 程序
1.在远程服务器的一个终端中,构建并运行浏览器应用程序:
cd mediasoup-demo/app/
sudo npm start
2.在远程服务器的另一个终端中启用远程调试,其中172.17.0.12是服务器内网IP地址:
cd mediasoup-demo/server/
node --inspect-brk=172.17.0.12:9229 server.js
如果mediasoup部署于本地机器,在另一个终端中启用本地调试:
cd mediasoup-demo/server/
node --inspect-brk server.js
启动调试后显示:
3.本地Chrome浏览器地址栏输入chrome://inspect,在打开的页面中点击Configure...按钮:
4.添加121.4.62.236:9229,其中121.4.62.236是服务器公网IP地址,点击Done按钮:
5.点击inspect:
6.进入调试页面:
可能遇到的问题:调试自动退出:
此时点击Console显示:
解决办法:在部署mediasoup的机器上,删除/tmp目录下的mediasoup-demo.sock文件:
sudo rm -f /tmp/mediasoup-demo.sock
然后从第一步重新开始执行。
调试 C++ 程序
在部署mediasoup的机器上执行步骤1-4。
1.为了方便,修改mediasoup的进程数为1:打开mediasoup-demo/server/config.js,将
numWorkers : Object.keys(os.cpus()).length,
修改为
numWorkers : 1,
2.启动mediasoup:
在终端中运行 Node.js 服务器应用程序:
cd mediasoup-demo/server/
sudo npm start
在另一个终端中,运行浏览器应用程序:
cd mediasoup-demo/app
sudo npm start
3.输入ps -a查询mediasoup的PID:
4.输入sudo gdb -p 32743调试正在运行的进程mediasoup-worke:
5.在本地机器上打开浏览器访问域名加入房间,在部署mediasoup的机器上就可以进入gdb 环境进行调试了。