我正在使用pm2运行节点web服务器.由于pm2生成另一个进程并将stdout和stderr重定向到文件,因此我必须在其他地方查找日志.理想情况下,我希望节点进程输出到我运行pm2的同一控制台窗口.否则,我会解决pm2使用活动控制台窗口运行节点进程并让节点进程的stdout和stderr写入该控制台窗口.怎么能实现这一目标?我在一台Windows机器上.
Tim*_*ann 49
我相信你也可以看到一个进程的stdout和stderr,它被命令运行守护pm2 logs或者pm2 logs [app-name].
Mad*_*eka 11
您可以通过启动另一个终端/控制台并运行此命令来轻松实现
pm2 log
Run Code Online (Sandbox Code Playgroud)
将所有内容记录到终端,除了 console.log
pm2 logs
Run Code Online (Sandbox Code Playgroud)
将所有内容记录到终端和 console.log
注意第二个命令中的“s”
Fra*_*rus 10
找到了答案(他们的文档不是很好),只是添加了--no-daemon标志,似乎已经做到了.虽然,它似乎仍然在第一次正常运行时记录到文件(即使使用标志).一旦进程重新启动(我正在观察文件更改),它就开始注销到控制台
以编程方式,您可以执行以下操作:
const pm2 = require('pm2')
pm2.connect(function(err) {
if (err) {
console.error(err);
process.exit(2);
}
pm2.start([
{
script : "server.js",
output: "/dev/stdout",
error: "/dev/stderr",
},
]
, function(err, proc) {
if(err) {
throw err
}
});
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
33136 次 |
| 最近记录: |