MongoDB監(jiān)控方法總結(jié)
1).使用serverStatus在Shell中監(jiān)控
使用mongo命令進(jìn)入Shell客戶端后使用命令:
>db.serverStatus();
主機(jī)名
>db.serverStatus().host
鎖信息
>db.serverStatus().locks
全局鎖信息
>db.serverStatus().globalLock
內(nèi)存信息
>db.serverStatus().mem
連接數(shù)信息
>db.serverStatus().connections
額外信息
>db.serverStatus().extra_info
索引統(tǒng)計(jì)信息
>db.serverStatus().indexCounters
后臺(tái)刷新信息
>db.serverStatus().backgroundFlushing
游標(biāo)信息
>db.serverStatus().cursors
網(wǎng)絡(luò)信息
>db.serverStatus().network
副本集信息
>db.serverStatus().repl
副本集的操作計(jì)數(shù)器
>db.serverStatus().opcountersRepl
操作計(jì)數(shù)器
>db.serverStatus().opcounters
斷言信息Asserts
>db.serverStatus().asserts
writeBacksQueued
>db.serverStatus().writeBacksQueued
持久化(dur)
>db.serverStatus().dur
記錄狀態(tài)信息
>db.serverStatus().recordStats
工作集配置
>db.serverStatus( { workingSet: 1 } ).workingSet
指標(biāo)信息metrics
>db.serverStatus().metrics
想監(jiān)控具體某個(gè)參數(shù),把參數(shù)名放在db.serverStatus().之后即可。
2).使用mongostat在Shell中監(jiān)控
serverStatus命令是靜態(tài)的監(jiān)控,
MongoDB提供了動(dòng)態(tài)的監(jiān)控執(zhí)行工具mongostat。mongostat會(huì)動(dòng)態(tài)輸出一些serverStatus提供的重要信息,每秒輸出一次。mongostat的使用方式跟mongo客戶端一樣,需要在mongostat可執(zhí)行文件下使用命令:
./ mongostat
如果MongoDB可執(zhí)行文件Bin目錄已經(jīng)加入環(huán)境變量則直接使用:
mongostat