PM2 应用状态
PM2 提供了实时的应用状态监控功能,可以让你轻松查看 Node.js 应用的运行状态。通过 PM2 的状态管理,你可以有效地跟踪应用的资源使用、进程状态以及日志输出,从而及时发现问题并进行处理。
1. 查看应用状态
要查看当前应用的状态,使用 pm2 status 命令。该命令会列出所有正在运行的应用,并显示有关每个应用的详细信息,包括进程 ID、运行状态、内存使用情况、CPU 占用率等。
bash
pm2 status输出示例:
txt
┌─────┬──────────────┬────────┬───┬──────┬────────┬───┬─────────────┬─────────────┐
│ id │ name │ mode │ ↺ │ status│ cpu │ memory │ uptime │
├─────┼──────────────┼────────┼───┼──────┼────────┼───┼─────────────┼─────────────┤
│ 0 │ my-app │ fork │ 0 │ online│ 0.5% │ 50MB │ 3h │
└─────┴──────────────┴────────┴───┴──────┴────────┴───┴─────────────┴─────────────┘在输出中,你可以看到以下列:
- id: 应用的唯一标识符。
- name: 应用的名称。
- mode: 启动模式(
fork或cluster)。 - ↺: 应用的重启次数。
- status: 当前应用的运行状态(如
online或stopped)。 - cpu: 应用使用的 CPU 百分比。
- memory: 应用使用的内存量。
- uptime: 应用的运行时长。
2. 查看单个应用的详细状态
除了查看所有应用的状态外,你还可以查看单个应用的详细状态。使用 pm2 show <app_name> 命令,替换 <app_name> 为你要查看的应用名称。
bash
pm2 show my-app这将输出该应用的详细状态信息,包括进程 ID、内存和 CPU 使用情况、日志路径、环境变量等。
示例输出:
txt
Describing process with id 0 - name my-app
--------------------------------------------------------------
pid 1234
status online
name my-app
cpu 0.5%
memory 50MB
user root
watching no
uptime 3h
script path /path/to/my-app/app.js3. 检查应用的日志
PM2 还允许你查看应用的日志,包括标准输出日志和错误日志。使用以下命令查看应用的实时日志:
bash
pm2 logs my-app如果你希望只查看错误日志,可以使用:
bash
pm2 logs my-app --err这将显示应用的错误日志,有助于快速定位和解决问题。
4. 停止、重启和删除应用
停止应用:你可以使用
pm2 stop <app_name>来停止应用。bashpm2 stop my-app重启应用:使用
pm2 restart <app_name>来重启应用。bashpm2 restart my-app删除应用:如果你不再需要某个应用,可以使用
pm2 delete <app_name>删除它。bashpm2 delete my-app
5. 结语
通过 PM2 的状态管理功能,你可以轻松地查看和管理应用的运行状态。无论是应用的内存、CPU 使用情况,还是日志和错误处理,PM2 都提供了强大的工具来帮助你保持应用的稳定性和高效性。
使用 pm2 status 和其他相关命令,可以快速诊断并解决可能出现的任何问题,确保应用平稳运行。