在CentOS系统中监控Node.js应用可以通过多种工具和方法实现。以下是一些常用的方法和工具:
PM2是一个流行的Node.js进程管理工具,它不仅可以管理Node.js应用的启动、停止和重启,还提供了丰富的监控功能。
sudo npm install -g pm2
pm2 start app.js
pm2 list
pm2 monit
pm2 logs
pm2 startup
pm2 save
Prometheus是一个开源的监控系统和时间序列数据库,而Grafana是一个开源的分析和监测平台。结合使用它们可以监控整个系统的性能指标。
wget https://github.com/prometheus/prometheus/releases/download/v2.35.0/prometheus-2.35.0.linux-amd64.tar.gz
tar xvfz prometheus-2.35.0.linux-amd64.tar.gz
mv prometheus-2.35.0.linux-amd64 prometheus
cd prometheus
./prometheus --config.file=prometheus.yml
wget https://dl.grafana.com/oss/release/grafana-8.2.0.linux-amd64.tar.gz
tar -zxvf grafana-8.2.0.linux-amd64.tar.gz
./bin/grafana-server
Node.js提供了内置的process
模块来获取进程信息,如CPU使用率和内存使用情况。此外,还可以使用第三方库如express-status-monitor
来提供实时的服务器性能指标和健康检查。
const os = require('os');
const cpuUsage = process.cpuUsage();
console.log(`CPU使用率: {cpuUsage.user} ${cpuUsage.system}%`);
const express = require('express');
const statusMonitor = require('express-status-monitor');
const app = express();
app.use(statusMonitor());
app.listen(3000);
CentOS提供了一系列系统监视器命令,如top
、htop
、vmstat
、iostat
、free
、sar
等,可以用来监控系统性能和资源使用情况。
top
yum install htop
htop
vmstat 3
iostat -x /dev/hdb6
free -m
sar -u 1 3
通过上述方法,可以有效地监控CentOS上的Node.js应用的性能和健康状况。选择合适的工具和方法取决于具体的监控需求和场景。