温馨提示×

CentOS Node.js应用如何监控

小樊
66
2025-03-31 16:04:33
栏目: 编程语言

在CentOS系统中监控Node.js应用可以通过多种工具和方法实现。以下是一些常用的方法和工具:

使用PM2进行应用监控

PM2是一个流行的Node.js进程管理工具,它不仅可以管理Node.js应用的启动、停止和重启,还提供了丰富的监控功能。

  • 安装PM2
sudo npm install -g pm2
  • 启动应用
pm2 start app.js
  • 查看进程状态
pm2 list
  • 监控资源消耗
pm2 monit
  • 日志管理
pm2 logs
  • 自动重启与持久化
pm2 startup
pm2 save

使用Prometheus和Grafana进行系统监控

Prometheus是一个开源的监控系统和时间序列数据库,而Grafana是一个开源的分析和监测平台。结合使用它们可以监控整个系统的性能指标。

  • 安装Prometheus
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
  • 启动Prometheus
cd prometheus
./prometheus --config.file=prometheus.yml
  • 安装Grafana
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
  • 启动Grafana
./bin/grafana-server

使用内置的process模块和第三方库

Node.js提供了内置的process模块来获取进程信息,如CPU使用率和内存使用情况。此外,还可以使用第三方库如express-status-monitor来提供实时的服务器性能指标和健康检查。

  • 使用process模块
const os = require('os');
const cpuUsage = process.cpuUsage();
console.log(`CPU使用率: {cpuUsage.user} ${cpuUsage.system}%`);
  • 使用express-status-monitor
const express = require('express');
const statusMonitor = require('express-status-monitor');
const app = express();
app.use(statusMonitor());
app.listen(3000);

使用系统监视器命令

CentOS提供了一系列系统监视器命令,如tophtopvmstatiostatfreesar等,可以用来监控系统性能和资源使用情况。

  • top命令
top
  • htop命令
yum install htop
htop
  • vmstat命令
vmstat 3
  • iostat命令
iostat -x /dev/hdb6
  • free命令
free -m
  • sar命令
sar -u 1 3

通过上述方法,可以有效地监控CentOS上的Node.js应用的性能和健康状况。选择合适的工具和方法取决于具体的监控需求和场景。

0