ServerStatus返回信息
ServerStatus返回mongodb中很多信息
http://docs.mongodb.org/manual/reference/command/serverStatus/
目錄
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索引過期文檔個數 } }