我有一个快速应用程序,我在终端启动时使用以下命令启用其中的调试日志:
DEBUG=custom:* npm start (on Ubuntu)
SET DEBUG=custom:* & npm start (on Windows)
在生产服务器上,我使用以下命令启动应用程序:
pm2 start bin/www -i 0
但是这不会在我的代码中启用debug
日志,因此调试语句不会添加到日志中,只会将console.error()
添加到日志文件中。如何在使用PM2启动应用程序时传递DEBUG=custom:*
选项?
答案 0 :(得分:2)
尝试DEBUG='custom:*' pm2 start bin/www -i 0
如果要重新启动现有进程,请添加--update-env标志:
DEBUG='custom:*' pm2 restart bin/www -i 0 --update-env
答案 1 :(得分:1)
Mikko是正确的,但是如果将其添加到package.json脚本中,将无法正常工作!
"scripts": {
"start": "DEBUG='custom:*' pm2 start bin/www -i 0",
...
},
因为DEBUG ='custom:*'被赋予pm2进程,而不是您的进程。因此,在这种情况下,您必须使用生态系统文件,并在生态系统文件中添加DEBUG设置,例如
"scripts": {
"start": "pm2 start ecosystem.config.js",
...
},
//in ecosystem.config.js add this
env: {
NODE_ENV: 'development',
DEBUG: 'custom:*'
},