mongostat是mongoDB自带的工具,用于检测mongodb的运行状态。
Test:Test/node-131 / # mongostat –help
Usage:
mongostat <options> <polling interval in seconds>
Monitor basic MongoDB server statistics.
See http://docs.mongodb.org/manual/reference/program/mongostat/ for more information.
general options:
–help print usage
–version print the tool version and exit
verbosity options:
-v, –verbose=<level> more detailed log output (include multiple times for more verbosity, e.g. -vvvvv, or specify a numeric value, e.g. –verbose=N)
–quiet hide all log output
connection options:
-h, –host=<hostname> mongodb host to connect to (setname/host1,host2 for replica sets)
–port=<port> server port (can also use –host hostname:port)
ssl options:
–ssl connect to a mongod or mongos that has ssl enabled
–sslCAFile=<filename> the .pem file containing the root certificate chain from the certificate authority
–sslPEMKeyFile=<filename> the .pem file containing the certificate and key
–sslPEMKeyPassword=<password> the password to decrypt the sslPEMKeyFile, if necessary
–sslCRLFile=<filename> the .pem file containing the certificate revocation list
–sslAllowInvalidCertificates bypass the validation for server certificates
–sslAllowInvalidHostnames bypass the validation for server name
–sslFIPSMode use FIPS mode of the installed openssl library
authentication options:
-u, –username=<username> username for authentication
-p, –password=<password> password for authentication
–authenticationDatabase=<database-name> database that holds the users credentials
–authenticationMechanism=<mechanism> authentication mechanism to use
stat options:
–noheaders dont output column names
-n, –rowcount=<count> number of stats lines to print (0 for indefinite)
–discover discover nodes and display stats for all
–http use HTTP instead of raw db connection
–all all optional fields
–json output as JSON rather than a formatted table
举例:
20秒数据,每1秒钟输出
mongostat -h 80.81.2.3 -p 27017 –rowcount 20 1
300秒数据,每5秒输出
mongostat -h 80.81.2.3 -p 27017 -n 300 5
以json格式输出
mongostat -h 80.81.2.4 -p 27017 -n 60 1 –json
搜集复制集aCloud中所有节点的60s内运行状态,间隔1s刷新,保存到文件mongostat_aCloud.log中。
mongostat -h aCloud/80.81.2.4,80.81.2.5,80.81.2.6 -p 27017 -n 60 1 >> mongostat_aCloud.log
监控复制集Primary节点 80.81.2.4 的状态
Sangfor:aCloud/node-131 /var/lib/mongodb # mongostat -h 80.81.2.4 -p 27017 -n 60 1
insert query update delete getmore command % dirty % used flushes vsize res qr|qw ar|aw netIn netOut conn set repl time
4327 0 0 0 445 748|0 0.5 4.1 0 1.1G 437.0M 0|0 0|0 834k 1m 7 aCloud PRI 2016-07-21T20:56:48+08:00
3857 0 0 0 442 752|0 0.5 4.1 0 1.1G 438.0M 0|0 0|0 771k 1m 7 aCloud PRI 2016-07-21T20:56:49+08:00
结果解析:
insert 每秒instert操作次数
query 每秒query操作次数
update 每秒update操作次数
delete 每秒delete操作次数
getmore每秒getmore操作次数
command每秒command执行次数
flushes每秒执行fsync将数据写入硬盘的次数
vsize 虚拟内存使用量,单位是MB
res 物理内存使用量,单位MB
qr|qw 队列中waiting的读/写次数
ar|aw 已激活active的读/写次数
netIn 接收端网络速率,单位是bytes
netOut发送端网络速率,单位是bytes
conn 连接数(open connections)
set 复制集(replica set)名称
repl 成员在复制集中的状态(PRI|SEC|ARB|REC)