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.Journal(dur)持久性
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索引过期文档个数
}
}