1.profile

profiling levels:

0,关闭profile;1,只抓取slow查询;2,抓取所有数据。

启动profile并且设置Profile级别:

可以通过mongo shell启动,也可以通过驱动中的profile命令启动,启动后记录会被保存在system.profile collection下,可以使用db.setProfilingLevel来启动。默认slow为100   毫秒。db.setProfilingLevel可以有2个参数,第一个参数指定Profiling 级别,第二个参     数指定slow阀值。

         检查当前Profiling 级别:可以通过db.getProfilingStatus()获取当前profiling级别,slowms      标记慢查询阀值。

         关闭Profiling还是使用db.setProfilingLevel(0)来关闭profiling

         整个实例开启Profiling:mongod --prifile=1 --slowms=15

         shard的Profiling:对shard的profiling要对每一个实例进行profiling

查看Profiling数据

可以直接在system.profile的collection上查看如:db.systen.profile.find()。或者使用show        profile,会显示最近至少1ms时间运行的前5条记录。

Profiler概述

要修改system.profile collection的大小必须:1.关闭profiling,2.删除system.profile,3.然后重新创建system.profile,4.重启profile。

shell如下:db.setProfilingLevel(0)

,db.system.profile.drop()

,db.createCollect("system.profile",{cappedLtrue,size:4000000})

,db.setProfilingLevel(1)

2.Mongostat
mongostat n n:刷新秒数 反应当前mongod的负荷
 
 
inserts      - # of inserts per second (* means replicated op)
query        - # of queries per second
update       - # of updates per second
delete       - # of deletes per second
getmore      - # of get mores (cursor batch) per second
command      - # of commands per second, on a slave its local|replicated
flushes      - # of fsync flushes per second
mapped       - amount of data mmaped (total data size) megabytes
vsize        - virtual size of process in megabytes
res          - resident size of process in megabytes
faults       - # of pages faults per sec
locked       - name of and percent time for most locked database
idx miss     - percent of btree page misses (sampled)
qr|qw        - queue lengths for clients waiting (read|write)
ar|aw        - active clients (read|write)
netIn        - network traffic in - bits
netOut       - network traffic out - bits
conn         - number of open connections
set          - replica set name
repl         - replication type
                  PRI - primary (master)
                  SEC - secondary
                  REC - recovering
                  UNK - unknown
                  SLV - slave
                  RTR - mongos process ("router")
 
3.Mongoop
collection级别反应,读写的时间
http://docs.mongodb.org/manual/reference/program/mongotop/
mongotop -h 192.168.10.69 2,每间隔2秒返回一次结果
                     ns       total        read       write              2014-05-09T14:00:55
    ub1405.system.users         0ms         0ms         0ms
  ub1405.system.profile         0ms         0ms         0ms
b1405.system.namespaces         0ms         0ms         0ms
  ub1405.system.indexes         0ms         0ms         0ms
    ub1405.WapRecommend         0ms         0ms         0ms
   ub1405.VisitPageInfo         0ms         0ms         0ms
       ub1405.UsageInfo         0ms         0ms         0ms
     ub1405.UpgradeInfo         0ms         0ms         0ms
          ub1405.Switch         0ms         0ms         0ms
 

 

4.mongoperf

用来测试io性能,可以用来做mongo的io压力测试,和sql server的SQLIOSim
http://docs.mongodb.org/manual/reference/program/mongoperf/
 
5. ServerStatus db.serverStatus()
 
包含了很多信息
 
6.db.stats()
 
反应数据库所占用的存储
{
        "db" : "ub1405",
        "collections" : 17,
        "objects" : 9939344,
        "avgObjSize" : 336.2453477815035,
        "dataSize" : 3342058180,
        "storageSize" : 4501643264,
        "numExtents" : 111,
        "indexes" : 15,
        "indexSize" : 322633136,
        "fileSize" : 8519680000,
        "nsSizeMB" : 16,
        "dataFileVersion" : {
                "major" : 4,
                "minor" : 5
        },
        "ok" : 1
}
 
7.db.collection.stats()
返回collection的一些信息:
{
        "ns" : "ub1405.WapRecommend",
        "count" : 514,
        "size" : 174416,
        "avgObjSize" : 339.3307392996109,
        "storageSize" : 430080,
        "numExtents" : 3,
        "nindexes" : 1,
        "lastExtentSize" : 327680,
        "paddingFactor" : 1,
        "systemFlags" : 1,
        "userFlags" : 0,
        "totalIndexSize" : 24528,
        "indexSizes" : {
                "_id_" : 24528
        },
        "ok" : 1
}

MongoDB 常用故障排查工具的更多相关文章

  1. erlang 故障排查工具

    系统级别perf top, dstat -tam, vtune 都能很好分析beam 瓶颈,本文主要erlang 级别排查: 1. 反编译 确认线上运行代码是否正确,reltools没掌握好,升级偶尔 ...

  2. java常用问题排查工具

    一:jstack找到最耗cpu的线程并定位代码 1.ps -ef|grep java 或者 jps -l 得到进程pid 2.找到该进程内最耗cpu的线程,我一般使用: top -Hp pid 3.c ...

  3. 常用故障排查监控shell脚本

    #!/bin/bash #ping_monitor.sh IP_ADDRESS=$1 if [ -n "$IP_ADDRESS" ] ; then while : do PING_ ...

  4. SQL Server 2008性能故障排查(一)——概论

    原文:SQL Server 2008性能故障排查(一)--概论 备注:本人花了大量下班时间翻译,绝无抄袭,允许转载,但请注明出处.由于篇幅长,无法一篇博文全部说完,同时也没那么快全部翻译完,所以按章节 ...

  5. 使用strace工具故障排查的5种简单方法

    使用strace工具故障排查的5种简单方法 本文源自5 simple ways to troubleshoot using strace strace 是一个非常简单的工具,用来跟踪可执行程序的系统调 ...

  6. MongoDB 常用的几大GUI工具

    MongoDB 常用的几大GUI工具 MongoDBCompass (官方的连接工具),免费的,界面简洁,不支持 sql 查询,支持性能监控.支持在三大平台 Windows .Mac .Linux 上 ...

  7. 1个工具,助你提升K8S故障排查效率!

    Kubernetes的故障排查一直困扰众多运维团队或DevOps,除了Kubernetes本身的复杂性之外,还有Kubernetes的工作负载是动态的原因.本文将介绍1个工具可以帮助你可视化K8S的网 ...

  8. Java线上应用故障排查之二:高内存占用

    搞Java开发的,经常会碰到下面两种异常: 1.java.lang.OutOfMemoryError: PermGen space 2.java.lang.OutOfMemoryError: Java ...

  9. 一次线上OOM故障排查经过

    转贴:http://my.oschina.net/flashsword/blog/205266 本文是一次线上OOM故障排查的经过,内容比较基础但是真实,主要是记录一下,没有OOM排查经验的同学也可以 ...

随机推荐

  1. Wijmo 2016年蓝图

    2015年很快就过去了,这是 Wijmo 重要的一年,尤其是对 Wijmo5.脱离传统的小部件,重新写一套 JS 控件,现在看来这个决定是正确的.用 TypeScript 写 Wijmo5,意味着我们 ...

  2. Yii2所提倡的配置管理方案

    无意中看到Yii2提供的高级应用模板,里面将入口文件与环境相关配置项放到独立的目录下的相应文件中.这应该算是一种比较理想的应用配置管理方案了. 以前整理过一种思路:http://www.cnblogs ...

  3. 一个bug

    bug原因: maven的project重新更新了一下project name,然后在更新过程中,卡死了,就强制退出.结果,就再也进不去eclipse了.看了eclipse的启动日志,各种报错,找不到 ...

  4. Js 风骚的代码

    1.写自动调用的匿名函数 当我们写完一个函数立即调用时,总是 function a(){ } a(); 或许 var a = function(){ } a(); 而高手总是 (function(){ ...

  5. windows的IIS下的负载均衡

    来自http://www.cnblogs.com/allen0118/p/4294066.html 在大型Web应用系统中,由于请求的数据量过大以及并发的因素,导致Web系统会出现宕机的现象,解决这一 ...

  6. TwentyTwenty – 使用 jQuery 实现图片对比功能

    这是一款非常棒的图片对比工具,能够方便的应用到你的网站中.其基本思路是把两张图片层叠在一起,当你拖动滑竿的时候,利用 CSS clip 裁剪图片,进行形成视觉对比效果. 您可能感兴趣的相关文章 Met ...

  7. Mondrian – 开源的矢量图形 Web 应用程序

    Mondrian 是一个免费矢量图形 Web 应用程序,类似 Adobe Illustrator 或 Inkscape.Mondrian 提供所有所需的工具来创建.修改和导出简单的 SVG 文件,过历 ...

  8. php代码美化/格式化 还原 -问题

    使用某个PHP代码格式化的工具.源代码: if ($this->_standardize_newlines == TRUE) { if (strpos($str, "\r") ...

  9. 一个类似backbone路由的纯净route ( 前端路由 客户端路由 backbone路由 )

    大家用backbone.angular,可能都习惯了内置的路由,这两个框架的路由都是非常优秀的,强大而简单. 客户端(浏览器)路由原理其实比较简单,其实就是监听hash的变化. 在之前的架构探讨中,说 ...

  10. SharePoint 2013 在母版页中插入WebPart

    最近QQ群里有朋友问,如何在母版页里插入自己开发的WebPart.其实很简单,母版页中虽然不允许插入WebPartZone,但是Designer就可以插入WebPart:或者手动注册,然后插入WebP ...