Node.js 应用在 CentOS 上如何监控

751
2025/4/10 15:32:53
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在CentOS上监控Node.js应用有多种方法,以下是一些常用的监控解决方案:

使用PM2进行监控

PM2是一个流行的Node.js进程管理器,它不仅能够确保应用持续运行,还提供了丰富的监控和管理功能。

  1. 安装Node.js和PM2

    • 更新包管理器缓存:
      sudo yum update -y
      
    • 安装构建工具:
      sudo yum install -y gcc-c++ make
      
    • 添加Node.js Yum存储库(以Node.js 16为例):
      curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
      
    • 安装Node.js和npm:
      sudo yum install -y nodejs npm
      
    • 验证安装:
      node -v
      npm -v
      
    • 全局安装PM2:
      sudo npm install -g pm2
      
    • 验证PM2安装:
      pm2 --version
      
  2. 使用PM2管理Node.js应用

    • 启动应用
      pm2 start app.js --name my-api
      
    • 查看进程状态
      pm2 list
      pm2 describe <app-name>
      
    • 监控资源消耗
      pm2 monit
      
    • 日志管理
      pm2 logs
      pm2 logs <app-name>
      
    • 自动重启与持久化
      pm2 startup
      pm2 save
      

使用Dynamic Trace进行动态追踪

Dynamic Trace是一种高级调试技术,可以帮助快速定位和解决生产环境中的问题。

  • 安装Dynamic Trace工具:常用的工具有strace、dtruss、systemtap、perf、dtrace、eBPF等。
  • 使用strace进行动态追踪
    sudo strace -p <pid> -v -s 2048
    
  • 使用dtruss进行动态追踪(仅限macOS):
    sudo dtruss -of node time.js
    

使用Nginx作为反向代理进行监控

Nginx不仅可以作为反向代理服务器,还可以通过其模块和配置来监控Node.js应用的性能。

  1. 安装Nginx
    sudo yum install -y nginx
    
  2. 配置Nginx: 编辑Nginx配置文件(通常位于/etc/nginx/conf.d/目录下),添加新的服务器块来处理你的Node.js应用请求。
    server {
        listen 80;
        server_name example.com www.example.com;
        location / {
            proxy_pass http://localhost:3000;
            proxy_http_version 1.1;
            proxy_set_header Upgrade http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host host;
            proxy_cache_bypass http_upgrade;
        }
    }
    
  3. 测试Nginx配置并重新加载
    sudo nginx -t
    sudo systemctl restart nginx
    

通过以上方法,你可以在CentOS上有效地监控和管理Node.js应用,确保其稳定运行。更多详细内容,可以参考相关文档和工具的使用手册。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: 如何设置CentOS中的静态IP地址