应用程序由运行
pm2 start app.js
或
pm2 start config.json
我想使用node_inspector在本地调试我的应用程序。我添加了debug
参数
pm2 start --node-args="--debug=7000" app.js
它工作得很好,但是如果我提供config.json
而不是脚本app.js
,我不知道如何传递有关调试的参数。下一条配置不起作用
{
"apps": [
{
"name": "myName",
"script": "app.js",
"args": "['--debug=7000']"
............
}
]
}
那么如何使用config调试由pm2运行的应用程序呢?
发布于 2018-10-18 06:24:20
pm2版本3.2.2
如果你想把Vscode和PM2连接起来,下面的方法将会起作用。
在生态系统文件ecosystem.config.js中,在apps下添加以下行。
node_args : ["--inspect"]
添加此参数将在调用脚本时自动设置两个节点参数。他们是--inspect
,--inspect-port=9232
。
可以在console.log(process.process.execArgv)
中看到它们
此外,如果实例数大于1,则上面的参数将为此pm2下的每个其他节点实例不断递增此端口号。
例如,对于第二个节点实例,pm2将传递--inspect
,--inspect-port=9233
。
如果您显式地将inspect-port设置为一个值,我将看到以下内容: args --inspect
、--inspect-port=9200
、--inspect-port=9230
而且它似乎没有使用您想要的端口。但我认为考虑到pm2的性质,最好不要使用特定的端口。
希望这能有所帮助。
发布于 2019-06-14 09:31:01
另一种方法是
env: {
NODE_OPTIONS: '--inspect'
}
在您的ecosystem.config.js文件中。
或者在pm2.yml中
apps:
- script: ./server.js
env:
DEBUG: express:*
node_args: "--inspect=3500"
https://stackoverflow.com/questions/29900253
复制相似问题