centos

CentOS Node.js应用如何监控与日志管理

小樊
32
2025-07-26 18:02:29
栏目: 编程语言

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

监控Node.js应用

  1. 使用PM2进行应用监控

    • 安装PM2sudo npm install -g pm2
    • 启动应用pm2 start app.js
    • 查看进程状态pm2 list
    • 监控资源消耗pm2 monit
    • 日志管理pm2 logs
    • 自动重启与持久化pm2 startuppm2 save
  2. 使用Prometheus和Grafana进行系统监控

    • 安装Prometheuswget https://github.com/prometheus/prometheus/releases/download/v2.35.0/prometheus-2.35.0.linux-amd64.tar.gz,解压并启动Prometheus。
    • 安装Grafanawget https://dl.grafana.com/oss/release/grafana-8.2.0.linux-amd64.tar.gz,解压并启动Grafana。
    • 结合使用Prometheus和Grafana可以监控整个系统的性能指标。
  3. 使用内置的process模块和第三方库

    • 使用process模块:获取CPU使用率和内存使用情况。
    • 使用express-status-monitor:提供实时的服务器性能指标和健康检查。
  4. 使用系统监视器命令

    • top命令:实时显示系统进程和资源使用情况。
    • htop命令yum install htop,安装并启动htop。
    • vmstat命令vmstat 3
    • iostat命令iostat -x /dev/hdb6
    • free命令free -m
    • sar命令sar -u 1 3

日志管理

  1. 使用PM2进行日志管理

    • 查看应用日志pm2 logs my-app
    • 查看特定应用的日志pm2 logs app_name
  2. 使用日志库

    • Winston:支持多种传输方式和日志级别。
    • Bunyan:轻量级、高性能的日志库,日志输出格式化为JSON。
    • Morgan:适用于Express应用的简单日志库。
  3. 使用logrotate进行日志轮转

    • 配置logrotate:创建一个logrotate配置文件,例如 /etc/logrotate.d/nodejs,配置日志轮转规则。
    • 测试logrotate配置logrotate -d /etc/logrotate.conflogrotate -f /etc/logrotate.conf
  4. 使用journalctl查看系统日志

    • 查看系统日志journalctl -u your-nodejs-service-name -t
  5. 使用ELK Stack(Elasticsearch、Logstash、Kibana)

    • 用于日志的收集、存储、分析和可视化
  6. 使用Splunk

    • 商业日志管理与分析工具,提供强大的日志搜索、监控和可视化功能。

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

0
看了该问题的人还看了