温馨提示×

MongoDB在Linux上的监控方法

小樊
41
2025-09-10 19:13:18
栏目: 云计算

以下是Linux上监控MongoDB的常用方法及工具:

一、命令行工具(轻量级,实时监控)

  • mongostat:实时显示插入、查询、更新等操作计数及资源使用情况。
    mongostat --host <主机> --port <端口> --username <用户名> --password <密码> --authenticationDatabase admin 
  • mongotop:按集合维度展示读写时间、索引命中率等。
    mongotop --host <主机> --port <端口> --username <用户名> --password <密码> --authenticationDatabase admin 
  • mongo shell内置命令
    • db.serverStatus():获取服务器全局状态(内存、锁、连接数等)。
    • db.stats():查看数据库存储、集合数等统计信息。
    • db.currentOp():显示当前正在执行的操作。

二、图形化工具(可视化监控)

  • MongoDB Compass:官方工具,提供实时性能图表、索引分析等。
  • 观测云/ELK Stack:集成日志、指标、链路追踪,支持自定义告警。

三、第三方监控系统

  • Prometheus + Grafana
    • 通过mongo-exporter采集指标,Grafana可视化展示。
    • 配置示例:在Prometheus的prometheus.yml中添加MongoDB抓取目标。
  • Zabbix/Percona PMM:支持企业级监控,可配置告警规则。

四、系统级监控(辅助排查资源问题)

  • top/htop:监控CPU、内存占用。
  • iostat/vmstat:分析磁盘I/O、虚拟内存使用。
  • netstat/ss:查看网络连接状态。

五、日志监控

  • 分析/var/log/mongodb/mongod.log,获取错误、慢查询等信息。

选择建议

  • 轻量级实时监控:mongostat + mongotop + db.serverStatus()
  • 全面可视化:Prometheus + Grafana 或 MongoDB Compass。
  • 企业级需求:Zabbix/Percona PMM + 日志分析(ELK)。

参考来源:

0