首页 > 代码库 > MongoDB ServerStatus返回信息

MongoDB ServerStatus返回信息

<style></style>

ServerStatus返回信息

ServerStatus返回mongodb中很多信息

http://docs.mongodb.org/manual/reference/command/serverStatus/

目录

ServerStatus返回信息... 1

1.实例信息... 1

2.... 1

3.全局锁... 2

4.内存使用... 3

5.连接... 3

6.额外信息... 3

7.索引计数器... 4

8.cursors. 4

9.网络... 4

10.复制集... 4

11.复制集操作集数... 5

12.操作计数器... 5

13.断言... 5

14.writeBackQueued.. 6

15.Journal(dur)持久性... 6

16.recordStats. 7

17.工作集(workingSet... 7

18.指标(metrics). 7

 

 

1.实例信息

http://docs.mongodb.org/manual/reference/command/serverStatus/#instance-information

 

"host" : "Fanr-PC",                           //主机名
"version" : "2.4.9",                          //版本号
"process" : "D:\\Program Files\\Mongodb\\bin\\mongod.exe",  //进程镜像名
"pid" : 4424,                                      //进程id
"uptime" : 9,                                     //启动时间
"uptimeMillis" : NumberLong(9749),                 //启动时间毫秒
"uptimeEstimate" : 9,
"localTime" : ISODate("2014-05-10T07:15:28.921Z"),       //本地时间

 

2.

http://docs.mongodb.org/manual/reference/command/serverStatus/#serverStatus.locks

 

Mongodb中锁分为4种:r,R,w,W

R:表示全局读锁

W:全局写锁

r:指定数据库读锁,类似于sql server的意向锁

w:指定数据库写锁,类似于sql server的意向锁

db.serverStatus().locks

 

这里还没有其他数据库的信息,因为重启之后我还没有访问过,所以不会生产锁块

"locks" : {
        "." : {   //全局锁信息
                "timeLockedMicros" : {               //锁定时间(毫秒)
                        "R" :NumberLong(37751),
                        "W" :NumberLong(72087)
                },
                "timeAcquiringMicros" : { //获取时间(毫秒)
                        "R" :NumberLong(39024),
                        "W" :NumberLong(4492)
                }
        },
        "admin" : {         //admin数据库中锁信息
                "timeLockedMicros" : {
 
                },
                "timeAcquiringMicros" : {
 
                }
        },
        "local" : {  //local数据库锁信息
                "timeLockedMicros" : {
                        "r" : NumberLong(15646),
                        "w" : NumberLong(0)
                },
                "timeAcquiringMicros" : {
                        "r" : NumberLong(92),
                        "w" : NumberLong(0)
                }
        }
},

 

3.全局锁

http://docs.mongodb.org/manual/reference/command/serverStatus/#server-status-global-lock

 

db.serverStatus().globalLock
"globalLock" : {
         "totalTime" : NumberLong(682181000),      //创建全局锁现在的时间(毫秒)
         "lockTime" : NumberLong(88208),                //创建全局锁后锁定的时间(毫秒)
         "currentQueue" : {
                 "total" : 0,   //总共当前等待锁的个数
                 "readers" : 0,      //总共当前等待读锁的个数
                 "writers" : 0 //总共当前等待写锁的个数
         },
         "activeClients" : {
                 "total" : 0,   //所有活动客户端
                 "readers" : 0,      //所有读操作的客户端个数
                 "writers" : 0 //所有写操作的客户端个数
         }
 },

 

4.内存使用

http://docs.mongodb.org/manual/reference/command/serverStatus/#mem

db.serverStatus().mem

{
        "bits" : 64,                     //64bit还是32bit实例
        "resident" : 43,  //在物理内存中的数据(MB)
        "virtual" : 767,             //虚拟内存(页面文件)使用(MB)
                                                        //如果启动了journal,那么virtual至少是mapped2倍
 
        "supported" : true,  //为true表示支持系统扩展内存信息??
        "mapped" : 320,       //映射文件大小,手册里说和所有数据库大小的和相近,
//但是不管新的实例,还是运行了一段时间的生产,
//发现都不是怎么回事儿
        "mappedWithJournal" : 640  //为journal提供内存一般是mapped的2倍
}

 

5.连接

http://docs.mongodb.org/manual/reference/command/serverStatus/#connections

db.serverStatus().connections

"connections" : {
         "current" : 1,                       //当前的连接
         "available" : 19999,        //可用连接
         "totalCreated" : NumberLong(1)         //所有创建过的连接
 },

 

6.额外信息

http://docs.mongodb.org/manual/reference/command/serverStatus/#extra-info

db.serverStatus().extra_info

{
        "note" : "fields vary by platform",  //字段和平台有关,centos下只有2个
        "page_faults" : 12789,                                 //硬错误页
        "usagePageFileMB" : 73,                            //页面文件使用大小MB
        "totalPageFileMB" : 8058,                          //页面文件总大小
        "availPageFileMB" : 3521,                          //可用页面文件大小
        "ramMB" : 4030                                             //物理内存大小
"heap_usage_bytes" : 76413680,         //linux或者unix下才有的字段,
//占用heap字节个数
}    

 

            

7.索引计数器

http://docs.mongodb.org/manual/reference/command/serverStatus/#indexcounters

db.serverStatus().indexCounters

{
        "accesses" : 101216836,  //访问次数
        "hits" : 101216836,                        //命中次数
        "misses" : 0,                                    //miss次数
        "resets" : 0,                                      //indexCounders重置次数
        "missRatio" : 0                               //miss率
}

8.cursors

http://docs.mongodb.org/manual/reference/command/serverStatus/

db.serverStatus().cursors

"cursors" : {
         "totalOpen" : 0,                         //mongodb维护的游标个数
         "clientCursors_size" : 0, //和totalOpen一样
         "timedOut" : 0                   //超时个数
 },

 

9.网络

http://docs.mongodb.org/manual/reference/command/serverStatus/#network

db.serverStatus().network

"network" : {
         "bytesIn" : 7510,                //输入字节数
         "bytesOut" : 41684,          //输出字节数
         "numRequests" : 94         //请求次数
 },

10.复制集

http://docs.mongodb.org/manual/reference/command/serverStatus/#repl

db.serverStatus().repl

{
        "setName" : "tiansign_ub",               //复制集名称
        "ismaster" : true,                                    //是不是primary
        "secondary" : false,                   //是不是secondary
        "hosts" : [                                                  //复制集成员
                "192.168.10.69:27017",
                "192.168.10.60:27017",
                "192.168.10.52:27017"
        ],
        "primary" : "192.168.10.69:27017",//primary地址
        "me" : "192.168.10.69:27017"   //本地地址
}

 

11.复制集操作集数

http://docs.mongodb.org/manual/reference/command/serverStatus/#opcountersrepl

总体和opcounter类似

db.serverStatus().opcountersRepl

{
        "insert" : 383,
        "query" : 0,
        "update" : 0,
        "delete" : 0,
        "getmore" : 0,
        "command" : 0
}

 

12.操作计数器

http://docs.mongodb.org/manual/reference/command/serverStatus/#opcounters

db.serverStatus().opcounters

{
        "insert" : 15,
        "query" : 1179,
        "update" : 0,
        "delete" : 0,
        "getmore" : 0,
        "command" : 82
}

 

13.断言

http://docs.mongodb.org/manual/reference/command/serverStatus/#asserts

db.serverStatus().asserts

"asserts" : {
         "regular" : 0,             //断言正常计数
         "warning" : 0,  //警告
         "msg" : 0,          //消息
         "user" : 0,           //用户断言计数
         "rollovers" : 0            //
 },

 

14.writeBackQueued

db.serverStatus().writeBacksQueued

true:有要被重新执行的操作

false:没有要被重新执行的操作

15.Journaldur)持久性

http://docs.mongodb.org/manual/reference/command/serverStatus/#journaling-dur

db.serverStatus().dur

{
        "commits" : 29,                    //上次提交间隔(journal group commit interval)之后,
                                                                      //提交的写入操作
        "journaledMB" : 0.12288,                            //上次分组提交间隔之后,写入操作的大小
        "writeToDataFilesMB" : 0.046255,  //上次分组提交间隔之后,
                                                                                             //从journal写入到数据文件的大小
        "compression" : 2.335411281739395,     //写入到journal的压缩率,
                                                                                             //journal的大小/未压缩的数据大小
        "commitsInWriteLock" : 0,                          //提交发生的时候有写锁
                                                                                             //用来表示写入负载是否过重
        "earlyCommits" : 0,                             //在提交间隔过来前,请求提交的次数
                                                                                             //用来判断分组提交间隔时间是否合适
                                                                      //和commits有写区别,看不出有啥用
        "timeMs" : {                                                      
                "dt" : 3002,                               //获取这些数据花的时间
                "prepLogBuffer" : 0,            //准备写入到journal文件的数据的时间
                                                                                             //PREPLOGBUFFER 代码
                "writeToJournal" : 24,                   //写入Journal文件的时间
                                                                                             //WRITETOJOURNAL
                "writeToDataFiles" : 4,                  //写入数据文件的时间, WRITETODATAFILES
                "remapPrivateView" : 0     //重新映射的时间,REMAPPRIVATEVIEW
        }
}

 

16.recordStats

http://docs.mongodb.org/manual/reference/command/serverStatus/#recordstats

db.serverStatus().recordStats

{
        "accessesNotInMemory" : 0,                              //访问数据不在内存次数
        "pageFaultExceptionsThrown" : 0,                           //页面错误异常抛出个数
                                                                                                                //和extra_info中的页面错误有区别
                                                                                    //这里只反映记录访问时的页错误
        "admin" : {                                                                           //admin数据库
                "accessesNotInMemory" : 0,             
                "pageFaultExceptionsThrown" : 0
        },
        "local" : {
                "accessesNotInMemory" : 0,
                "pageFaultExceptionsThrown" : 0
        },
        "test" : {
                "accessesNotInMemory" : 0,
                "pageFaultExceptionsThrown" : 0
        }
}

 

17.工作集(workingSet

http://docs.mongodb.org/manual/reference/command/serverStatus/#workingset

db.serverStatus({workingSet:1}).workingSet

"workingSet" : {
         "note" : "thisIsAnEstimate",                       //只是一个评估
         "pagesInMemory" : 9,                               //在overSeconds时间内
                                                                      //被mongodb放问的内存页个数
         "computationTimeMicros" : 5073,        //生成workingSet花的时间
         "overSeconds" : 18117                     //最老和最新数据页间隔时间
                                                                                            //不管时间多长,pageInMemory<=RAM
},

 

18.指标(metrics)

http://docs.mongodb.org/manual/reference/command/serverStatus/#metrics

{
        "document" : {                                                //文档指标,反映文档插入删除操作
                "deleted" : NumberLong(0),
                "inserted" : NumberLong(15),
                "returned" : NumberLong(44),
                "updated" : NumberLong(0)
        },
        "getLastError" : {
                "wtime" : {                                         //getLastError中w>1的操作指标
                        "num" : 14,                        //数量
                        "totalMillis" : 0                           //处理时间
                },
                "wtimeouts" : NumberLong(0) //超时个数,时间来getLastError中参数
        },
        "operation" : {
                "fastmod" : NumberLong(0),   //表示不用扩容和修改索引的update
                "idhack" : NumberLong(0),               //以_id为过滤条件的查询
                "scanAndOrder" : NumberLong(0)          //不需要执行排序的sort
        },
        "queryExecutor" : {
                "scanned" : NumberLong(2602)            //被扫描个数
        },
        "record" : {
                "moves" : NumberLong(0)                 //文档移动次数,一般是为了扩展文档
        },
        "repl" : {
                "apply" : {            //指被应用的oplog
                        "batches" : {  //batch被应用的次数,操作是被分批处理的
                                "num" : 0,          //应用次数
                                "totalMillis" : 0  //应用时长
                        },
                        "ops" : NumberLong(0)        //被应用的操作个数
                },
                "buffer" : {                       //用来缓存从复制同步支援过来的oplog的操作
                        "count" : NumberLong(0),  //buffer中操作个数
                        "maxSizeBytes" : 268435456,        //buffer最大大小
                        "sizeBytes" : NumberLong(0)       //现在buffer的大小
                },
                "network" : {
                        "bytes" : NumberLong(0),   //从复制同步资源读取的量
                        "getmores" : {
                                "num" : 0,
                                "totalMillis" : 0
                        },
                        "ops" : NumberLong(0),          //从复制同步资源读取的操作数
                        "readersCreated" : NumberLong(0)//创建oplog读取进程个数
                },
                "oplog" : {
                        "insert" : {                    //插入到oplog的个数
                                "num" : 0,
                                "totalMillis" : 0
                        },
                        "insertBytes" : NumberLong(0)   //插入的数据量
                },
                "preload" : {                                //预读
                        "docs" : {                           //预读文档个数
                                "num" : 0,
                                "totalMillis" : 0
                        },
                        "indexes" : {             //预读索引项个数
                                "num" : 0,
                                "totalMillis" : 0
                        }
                }
        },
        "ttl" : {
                "deletedDocuments" : NumberLong(0),        //TTL索引删除文档个数
                "passes" : NumberLong(426)                 //TTL索引过期文档个数
        }
}