MongoDB mongostat、mongostop、およびリアルタイムモニタツールmotop
7884 ワード
MongoDBにはmongostatとmongotopの2つのコマンドが用意されており、MongoDBの動作を監視しています.この2つのコマンドは、MongoDBデータベースの処理が遅くなるなどの問題を処理するのに役立ち、MongoDBの現在のステータス情報を詳細に統計することができます.それ以外にdbを用いることもできる.serverStatus()、db.stats()、profile機能をオンにしてログを表示してモニタリング分析を行います.
一、mongotop
mongotopは、MongoDBのインスタンスを追跡し、各セットの統計データを提供するために使用されます.デフォルトではmongotopは1秒ごとにリフレッシュされます.
ns:データベース名空間.後者はデータベース名と集合を結合します.
db:データベースの名前.名前のデータベースは、特定のデータベースではなくグローバルにロックされます.
total:mongodがこのコマンドスペースに費やした総時間.
read:このコマンド空間でmongodが読み取り操作を実行するのにかかる時間.
write:このネーミングスペースでmongodが書き込み操作にかかる時間.
二、mongostatは毎秒1回状態値をリフレッシュし、良好な可読性を提供し、これらのパラメータによって全体的な性能状況を観察することができる.
insert:1秒あたりの挿入量
Query:1秒あたりのクエリー数
update:毎秒更新量
delete:1秒あたりの削除量
locked:ロック量
qr|qw:クライアントクエリキュー長(読み取り|書き込み)
Ar|aw:アクティブクライアント端末(読み取り|書き込み)
conn:接続数
time:現在時刻
三、リアルタイムモニタリングツールmotop mongodbリアルタイムモニタリングツールは、同時に複数のMongoDBサーバーをモニタリングすることができる.現在のアクションが表示されます.プロジェクトのアドレス:https://github.com/tart/motop1.依存パッケージpython 2.6以上pymongo 2.0以上1)をインストールeasy_を使用インストール#wgethttps://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python # easy_install motop 2)ソースコードインストール#wgethttps://github.com/tart/motop/archive/master.zip # unzip master.zip # ./setup.py install 3.ヘルプ#motop-h 4.監視複数台#motop 192.168.124.50 192.158.124.51動作:q Quitp Pause e Explain the query k Kill operation using“mongo”executable K Kill operations older than given seconds using“mongo”executable r Try to reconnect to disconnected servers R Try to reconnect to all servers 5.プロファイルは/etc/motopで作成できます.conf.複数の構成が短いことができます.各セクションには、address:サーバのアドレス(必須)username:ログインユーザ名password:ログインユーザパスワードstatus:表示状態(デフォルトオープン)replicationInfo:レプリケーション状態(デフォルト:オープン)replicaSetの表示状態(デフォルト:オープン)operations:表示操作(デフォルト:オン)replicationOperations:マスターおよびスレーブのレプリケーション操作を継続的に表示(デフォルト:オン)DEFAULTは特殊な部分です.このセクションのパラメータはデフォルトに設定できます.構成例:[MongoDB 01]address=0.42.2.1.121 replicationOperations=off[MongoDB 02]address=0.42.2.1.122[MongoDB 03]address=0.42.2.2.1.123[MongoDB 04]address=0.42.2.2.1.124 username=foo password=bar
一、mongotop
mongotopは、MongoDBのインスタンスを追跡し、各セットの統計データを提供するために使用されます.デフォルトではmongotopは1秒ごとにリフレッシュされます.
./bin/mongotop --help
View live MongoDB collection statistics.
Options:
--help
-v [ --verbose ] be more verbose (include multiple times
for more verbosity e.g. -vvvvv)
--quiet silence all non error diagnostic
messages
--version
-h [ --host ] arg ( <set name>/s1,s2 for sets)
--port arg , --host hostname:port
--ipv6 IPV6,
-u [ --username ] arg
-p [ --password ] arg
--authenticationDatabase arg user source (defaults to dbname)
--authenticationMechanism arg (=MONGODB-CR)
authentication mechanism
--gssapiServiceName arg (=mongodb) Service name to use when authenticating
using GSSAPI/Kerberos
--gssapiHostName arg Remote host name to use for purpose of
GSSAPI/Kerberos authentication
--locks
は次のとおりです. ns total read write 2015-03-21T04:27:30
User.User.user 0ms 0ms 0ms
User.system.indexes 0ms 0ms 0ms
User.system.namespaces 0ms 0ms 0ms
User.user 0ms 0ms 0ms
admin.system.indexes 0ms 0ms 0ms
admin.system.roles 0ms 0ms 0ms
admin.system.users 0ms 0ms 0ms
出力フィールドの説明:ns:データベース名空間.後者はデータベース名と集合を結合します.
db:データベースの名前.名前のデータベースは、特定のデータベースではなくグローバルにロックされます.
total:mongodがこのコマンドスペースに費やした総時間.
read:このコマンド空間でmongodが読み取り操作を実行するのにかかる時間.
write:このネーミングスペースでmongodが書き込み操作にかかる時間.
二、mongostatは毎秒1回状態値をリフレッシュし、良好な可読性を提供し、これらのパラメータによって全体的な性能状況を観察することができる.
./bin/mongostat --help
View live MongoDB performance statistics.
usage: mongostat [options] [sleep time]
sleep time: time to wait (in seconds) between calls
Options:
--help produce help message
-v [ --verbose ] be more verbose (include multiple times
for more verbosity e.g. -vvvvv)
--quiet silence all non error diagnostic
messages
--version print the program's version and exit
-h [ --host ] arg mongo host to connect to ( <set
name>/s1,s2 for sets)
--port arg server port. Can also use --host
hostname:port
--ipv6 enable IPv6 support (disabled by
default)
-u [ --username ] arg username
-p [ --password ] arg password
--authenticationDatabase arg user source (defaults to dbname)
--authenticationMechanism arg (=MONGODB-CR)
authentication mechanism
--gssapiServiceName arg (=mongodb) Service name to use when authenticating
using GSSAPI/Kerberos
--gssapiHostName arg Remote host name to use for purpose of
GSSAPI/Kerberos authentication
--noheaders don't output column names
-n [ --rowcount ] arg (=0) number of stats lines to print (0 for
indefinite)
--http use http instead of raw db connection
--discover discover nodes and display stats for
all
--all all optional fields
Fields
inserts - # of inserts per second (* means replicated op)
query - # of queries per second
update - # of updates per second
delete - # of deletes per second
getmore - # of get mores (cursor batch) per second
command - # of commands per second, on a slave its local|replicated
flushes - # of fsync flushes per second
mapped - amount of data mmaped (total data size) megabytes
vsize - virtual size of process in megabytes
res - resident size of process in megabytes
non-mapped - amount virtual memeory less mapped memory (only with --all)
faults - # of pages faults per sec
locked - name of and percent time for most locked database
idx miss - percent of btree page misses (sampled)
qr|qw - queue lengths for clients waiting (read|write)
ar|aw - active clients (read|write)
netIn - network traffic in - bytes
netOut - network traffic out - bytes
conn - number of open connections
set - replica set name
repl - replication type
PRI - primary (master)
SEC - secondary
REC - recovering
UNK - unknown
SLV - slave
b RTR - mongos process ("router")
は次のとおりです../mongostat --host 192.168.100.90:10000 -vvvvv
insert query update delete getmore command flushes mapped vsize res faults locked db idx miss % qr|qw ar|aw netIn netOut conn set repl time
*0 *0 *0 *0 0 2|0 0 448m 3.22g 74m 0 test:0.0% 0 0|0 0|0 120b 4k 26 shard_a PRI 17:43:51
*0 *0 *0 *0 0 3|0 0 448m 3.22g 74m 0 local:0.0% 0 0|0 0|0 353b 4k 26 shard_a PRI 17:43:52
*0 *0 *0 *0 1 2|0 0 448m 3.22g 74m 0 test:0.0% 0 0|0 0|0 167b 4k 26 shard_a PRI 17:43:53
フィールドの説明:insert:1秒あたりの挿入量
Query:1秒あたりのクエリー数
update:毎秒更新量
delete:1秒あたりの削除量
locked:ロック量
qr|qw:クライアントクエリキュー長(読み取り|書き込み)
Ar|aw:アクティブクライアント端末(読み取り|書き込み)
conn:接続数
time:現在時刻
三、リアルタイムモニタリングツールmotop mongodbリアルタイムモニタリングツールは、同時に複数のMongoDBサーバーをモニタリングすることができる.現在のアクションが表示されます.プロジェクトのアドレス:https://github.com/tart/motop1.依存パッケージpython 2.6以上pymongo 2.0以上1)をインストールeasy_を使用インストール#wgethttps://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python # easy_install motop 2)ソースコードインストール#wgethttps://github.com/tart/motop/archive/master.zip # unzip master.zip # ./setup.py install 3.ヘルプ#motop-h 4.監視複数台#motop 192.168.124.50 192.158.124.51動作:q Quitp Pause e Explain the query k Kill operation using“mongo”executable K Kill operations older than given seconds using“mongo”executable r Try to reconnect to disconnected servers R Try to reconnect to all servers 5.プロファイルは/etc/motopで作成できます.conf.複数の構成が短いことができます.各セクションには、address:サーバのアドレス(必須)username:ログインユーザ名password:ログインユーザパスワードstatus:表示状態(デフォルトオープン)replicationInfo:レプリケーション状態(デフォルト:オープン)replicaSetの表示状態(デフォルト:オープン)operations:表示操作(デフォルト:オン)replicationOperations:マスターおよびスレーブのレプリケーション操作を継続的に表示(デフォルト:オン)DEFAULTは特殊な部分です.このセクションのパラメータはデフォルトに設定できます.構成例:[MongoDB 01]address=0.42.2.1.121 replicationOperations=off[MongoDB 02]address=0.42.2.1.122[MongoDB 03]address=0.42.2.2.1.123[MongoDB 04]address=0.42.2.2.1.124 username=foo password=bar