Nodejs pm2 允许多个脚本 为啥日志只有一个脚本的运行记录
Nodejs pm2 允许多个脚本 为啥日志只有一个脚本的运行记录
使用 pm2 运行了多个脚本 但是为啥每次只看到一个脚本的日志 其他脚本没日志
pm2 logs
5 回复
pm2 log id 可以查看指定 id 的日志
运行脚本时添加–log <path> 可以指定日志的输出路径
一楼说的对
但是我发现几个脚本只有一个脚本在运行 有日志 其他都没动静呢
单独运行就没问题
一般是会输出日志的。但是启动日志的话你可能看不到。也不排除 pm2 的某些 bug
在Node.js环境中使用PM2(Process Manager 2)来管理多个脚本时,如果发现日志中只记录了一个脚本的运行情况,这通常是由于配置或日志管理设置不当导致的。
首先,确保你在启动PM2时正确地为每个脚本分配了不同的名称或ID。例如,使用以下命令启动两个脚本:
pm2 start script1.js --name script1
pm2 start script2.js --name script2
这样,PM2会为每个脚本创建独立的进程和日志。
接下来,检查PM2的日志管理设置。PM2默认会为每个进程生成独立的日志文件,通常位于~/.pm2/logs/
目录下,文件名格式为<appName>-<id>-out.log
和<appName>-<id>-error.log
。
你可以使用以下命令查看PM2管理的所有进程及其日志路径:
pm2 list
pm2 show <appName_or_id>
如果仍然只看到一个脚本的日志,可能是因为:
- 另一个脚本没有正确启动,可以通过
pm2 logs <appName_or_id>
查看特定脚本的日志。 - 日志文件被覆盖或重定向到了同一个文件,检查脚本中是否有日志重定向的代码。
- 权限问题导致PM2无法写入日志文件,确保PM2有足够的权限访问日志文件目录。
确保以上设置正确无误后,PM2应该能够为每个脚本生成独立的日志文件。