当前位置: 首页 > news >正文

MongoDB的监控首选:mongostat

MongoDB的监控首选:mongostat

 

mongostat实在是太有用了,如果DB出现了异常,我第一反应就是查看mongostat。

如果是运维的话,喝着咖啡,看着mongostat,生活真是惬意啊。

运行很简单,./mongostat --host 10.45.3.97  --port 20127

主要详细说明一下各列的意义(也可以参考./mongostat --help)

   www.2cto.com  

insert:     一秒内的插入数

query :     一秒内的查询数

update:     一秒内的更新数

delete:     一秒内的删除数

  10条简单的查询可能比一条复杂的查询速度还快, 所以数值的大小,意义并不大。

  但至少可以知道,现在是否在处理查询,是否在插入。

  如果是slave,数值前往往有一个*, 代表是replicate操作

 

getmore:    查询时游标(cursor)的getmore操作

  用处不大

    www.2cto.com  

command:    一秒内执行的命令数

  比如批量插入,只认为是一条命令。 意义不大。

  如果是slave,会显示两个值, local|replicated,通过这两个数值的比较,或许可以看出点问题。

  

flushes:    一秒内flush的次数 

  一般都是0,或者1,通过计算两个1之间的间隔时间,可以大致了解多长时间flush一次。

  flush开销是很大的,如果频繁的flush,可能就要找找原因了。

    

mapped:     

vsize:

res:

  这个和你用top看到的一样,mapped, vsize一般不会有大的变动, res会慢慢的上升,如果res经常突然下降,去查查是否有别的程序狂吃内存。

  

faults:

  别被这个名字吓着,大压力下这个数值往往不为0。如果经常不为0,那就该加内存了。

  

locked:

  MongoDB就一把读写锁,这里指的是写锁所住的时间百分比。这个数值过大(经常超过10%),那就是出状况了。

  

idx miss:

  非常重要的参数, 正常情况下,所有的查询都应该通过索引,也就是idx miss为0。如果这里数值较大,是不是缺少索引。

  

qr|qw: queue lengths for clients waiting (read|write)

ar|aw: active clients (read|write)

  如果这两个数值很大,那么就是DB被堵住了,DB的处理速度不及请求速度。

  看看是否有开销很大的慢查询。如果查询一切正常,确实是负载很大,就需要加机器了。

  

netIn: network traffic in - bits

netOut: network traffic out - bits

  网络带宽压力,一般MongoDB,网络不会成为瓶颈

 

conn: number of open connections

  MongoDB为每一个连接创建一个线程,线程的创建和释放也是有开销的。尽量不要让这个数值很大。

 

repl: 服务器当前状态

    M   - master

    SEC - secondary

    REC - recovering

    UNK - unknown

    SLV - slave

    

time: 当前时间






      本文转自布拉君君 51CTO博客,原文链接:http://blog.51cto.com/5148737/1659372,如需转载请自行联系原作者



相关文章:

  • 采用交换机和HUB连接局域网有什么区别?
  • 进行高效数字化转型工作的7个习惯
  • Microsoft Dynamics AX 2012 正式版虚拟机
  • Python学习笔记-实现探测Web服务质量
  • 隐藏文件无法取消隐藏属性的解决[转]
  • 缓存DNS
  • 如何对C++虚基类构造函数
  • echars 动态加载数据
  • How The Kernel Manages Your Memory
  • Linux内存管理--基本概念【转】
  • UVA 321 The New Villa
  • ASP.NET程序开发范例宝典
  • Jquery实现鼠标双击Table单元格变成文本框,输入内容并更新到数据库
  • 9.Java通过axis调用WebService
  • WCF服务在JavaScript中使用ASP.NET的AJAX方法
  • ES6指北【2】—— 箭头函数
  • [js高手之路]搞清楚面向对象,必须要理解对象在创建过程中的内存表示
  • [译]前端离线指南(上)
  • 【前端学习】-粗谈选择器
  • 【知识碎片】第三方登录弹窗效果
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • Java程序员幽默爆笑锦集
  • Kibana配置logstash,报表一体化
  • leetcode388. Longest Absolute File Path
  • linux安装openssl、swoole等扩展的具体步骤
  • session共享问题解决方案
  • TypeScript迭代器
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 安装python包到指定虚拟环境
  • 仿天猫超市收藏抛物线动画工具库
  • 极限编程 (Extreme Programming) - 发布计划 (Release Planning)
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • 阿里云ACE认证学习知识点梳理
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​什么是bug?bug的源头在哪里?
  • #1014 : Trie树
  • #数学建模# 线性规划问题的Matlab求解
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (四)鸿鹄云架构一服务注册中心
  • (转)母版页和相对路径
  • (转载)OpenStack Hacker养成指南
  • .NET Core引入性能分析引导优化
  • .stream().map与.stream().flatMap的使用
  • [Android Pro] AndroidX重构和映射
  • [Android]Android开发入门之HelloWorld
  • [autojs]autojs开关按钮的简单使用
  • [CF703D]Mishka and Interesting sum/[BZOJ5476]位运算
  • [docker] Docker容器服务更新与发现之consul
  • [Docker]五.Docker中Dockerfile详解
  • [hibernate]基本值类型映射之日期类型