在Ubuntu上如何监控Node.js应用的运行状态
在Ubuntu上监控Node.js应用运行状态,可根据需求选择以下工具和方法:
- PM2:
- 安装:
sudo npm install pm2 -g
- 启动应用:
pm2 start app.js --name "my-app"
- 监控状态:
pm2 status
(查看进程状态)、pm2 monit
(实时监控CPU/内存)、pm2 logs
(查看日志)。
- 安装:
- systemd(适合生产环境):
- 创建服务文件:
sudo nano /etc/systemd/system/my-app.service
,配置ExecStart
为Node.js应用路径,设置Restart=always
。 - 启动服务:
sudo systemctl start my-app
,查看状态:sudo systemctl status my-app
。
- 创建服务文件:
- 开发环境工具:
- nodemon:安装后启动应用,自动重启文件变更(
npm install nodemon -g
,nodemon app.js
)。
- nodemon:安装后启动应用,自动重启文件变更(
- 系统级监控工具:
- htop:交互式查看进程资源占用(
sudo apt install htop
,运行后筛选Node.js进程)。 - top/htop:基础进程监控,查看CPU/内存使用情况。
- htop:交互式查看进程资源占用(
- 第三方监控服务:
- Prometheus + Grafana:通过
prom-client
库暴露指标,Grafana展示图表。 - New Relic/Datadog:提供性能、错误跟踪和日志分析。
- Prometheus + Grafana:通过
- 内置性能分析:
- 使用
process.memoryUsage()
获取内存占用,或通过v8-profiler
、heapdump
分析内存泄漏。
- 使用
根据场景选择:开发环境用nodemon
,生产环境推荐PM2
或systemd
,复杂监控需求可结合Prometheus等工具。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!