使 pm2 登录到控制台
Make pm2 log to console
我正在 运行使用 pm2 创建一个节点网络服务器。由于 pm2 生成另一个进程并将 stdout 和 stderr 重定向到文件,我必须在其他地方寻找日志。理想情况下,我希望将节点进程输出到与 运行 pm2 相同的控制台 window。否则,我将满足于 pm2 运行 具有活动控制台 window 的节点进程,并将节点进程的 stdout 和 stderr 写入该控制台 window。如何实现?我在 windows 机器上。
找到答案(他们的文档不是很好),只是添加了 --no-daemon
标志,似乎已经做到了。虽然,它似乎仍在第一次正常运行时记录到文件(即使使用标志)。一旦进程重新启动(我正在观察文件更改),它就会开始注销到控制台
我相信您还可以看到 运行 由命令 运行 守护进程的 stdout 和 stderr pm2 logs
或 pm2 logs [app-name]
.
您可以通过编程方式执行如下操作:
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
}
});
})
你可以通过启动另一个 terminal/console 和 运行 这个命令来轻松实现这一点
pm2 log
将除 console.log
之外的所有内容记录到终端
pm2 logs
将所有内容记录到终端并console.log
注意第二条命令中的's'
直接转到您要监控日志的应用运行
pm2 logs <app id or app name> --lines 50
我正在 运行使用 pm2 创建一个节点网络服务器。由于 pm2 生成另一个进程并将 stdout 和 stderr 重定向到文件,我必须在其他地方寻找日志。理想情况下,我希望将节点进程输出到与 运行 pm2 相同的控制台 window。否则,我将满足于 pm2 运行 具有活动控制台 window 的节点进程,并将节点进程的 stdout 和 stderr 写入该控制台 window。如何实现?我在 windows 机器上。
找到答案(他们的文档不是很好),只是添加了 --no-daemon
标志,似乎已经做到了。虽然,它似乎仍在第一次正常运行时记录到文件(即使使用标志)。一旦进程重新启动(我正在观察文件更改),它就会开始注销到控制台
我相信您还可以看到 运行 由命令 运行 守护进程的 stdout 和 stderr pm2 logs
或 pm2 logs [app-name]
.
您可以通过编程方式执行如下操作:
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
}
});
})
你可以通过启动另一个 terminal/console 和 运行 这个命令来轻松实现这一点
pm2 log
将除 console.log
之外的所有内容记录到终端 pm2 logs
将所有内容记录到终端并console.log
注意第二条命令中的's'
直接转到您要监控日志的应用运行
pm2 logs <app id or app name> --lines 50