Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

sh.status()

項目一覧

  • 定義
  • 出力例
  • 出力フィールド
sh.status()

mongosインスタンスで実行すると、シャーディング構成のフォーマットされたレポートと、 シャーディングされたクラスター 内の既存のチャンクに関する情報が出力されます。 デフォルトの動作では、チャンクの合計数が20以上の場合、チャンクの詳細情報は表示されません。

sh.status()メソッドには次のパラメータがあります。

Parameter
タイプ
説明
verbose
ブール値

任意。冗長レベルを決定します。

true の場合、メソッドは次のように表示されます。

  • チャンクが 20 個以上ある場合も含めた、シャード間のチャンク分散の完全な詳細および各シャード上のチャンク数。

  • アクティブな mongos インスタンスの詳細。

false の場合、メソッドは次のように表示されます。

  • チャンクが 20 個未満の場合にのみ、シャード間のチャンク分散の完全な詳細チャンクが 20 個以上ある場合、このメソッドは代わりに too many chunks to print ... メッセージを返し、各シャード上のチャンク数のみを表示します。

  • アクティブな mongos インスタンスのバージョンと数のみ。

デフォルトの冗長の値は false です。

Tip

以下も参照してください。

[シャーディング バージョン ]セクションには、コンフィギュレーションデータベースに関する情報が表示されます。

--- Sharding Status ---
sharding version: {
"_id" : <num>,
"minCompatibleVersion" : <num>,
"currentVersion" : <num>,
"clusterId" : <ObjectId>
}

[シャード] セクションには、シャードに関する情報が表示されます。また、各シャードについて、名前、ホスト、および関連付けられているタグ(存在する場合)が表示されます。

shards:
{ "_id" : <shard name1>, "host" : <string>, "tags" : [ <string> ... ], "state" : <num> }
{ "_id" : <shard name2>, "host" : <string>, "tags" : [ <string> ... ], "state" : <num> }
...

[アクティブなmongosインスタンス ]セクションには、デフォルトで、過去60秒以内にアクティブになったmongosインスタンスのバージョンと数に関する情報が表示されます。

active mongoses:
<version> : <num>

verbose パラメータを true にしてメソッドを実行すると、アクティブなmongos インスタンス セクションに追加情報が表示されます。

active mongoses:
{ "_id" : "<hostname:port>", "advisoryHostFQDNs" : [ "<name>" ], "mongoVersion" : <string>, "ping" : <ISODate>, "up" : <long>, "waiting" : <boolean> }

[自動分割 ]には、自動分割が有効になっているかどうかに関する情報が表示されます。

autosplit:
Currently enabled: <yes|no>

[バランサー] セクションには、バランサーの状態に関する情報が表示されます。バランサーの現在の操作に関する洞察が得られ、バランスが取れていないシャーディングされたクラスターのトラブルシューティングに役立ちます。

balancer:
Currently enabled: yes
Currently running: yes
Collections with active migrations:
config.system.sessions started at Fri May 15 2020 17:38:12 GMT-0400 (EDT)
Failed balancer rounds in last 5 attempts: 0
Migration Results for the last 24 hours:
416 : Success
1 : Failed with error 'aborted', from shardA to shardB

[データベース] セクションには、データベースに関する情報が表示されます。 各データベースのセクションには、名前、データベースでシャーディングが有効になっているかどうか、およびデータベースのプライマリシャードが表示されます。

databases:
{ "_id" : <dbname1>, "primary" : <string>, "partitioned" : <boolean>, "version": <document> }
{ "_id" : <dbname2>, "primary" : <string>, "partitioned" : <boolean>, "version": <document> }
...

シャーディングされたコレクションセクションでは、シャーディングされたコレクションのシャーディングの詳細に関する情報が提供されます。各シャーディングされたコレクションそれぞれに対して、セクションには、シャードキー、シャードあたりのチャンク数、シャード間のチャンクの分散 [1]、およびシャードキー範囲のタグ情報(存在する場合)が表示されます。

<dbname>.<collection>
shard key: { <shard key> : <1 or hashed> }
unique: <boolean>
balancing: <boolean>
chunks:
<shard name1> <number of chunks>
<shard name2> <number of chunks>
...
{ <shard key>: <min range1> } -->> { <shard key> : <max range1> } on : <shard name> <last modified timestamp>
{ <shard key>: <min range2> } -->> { <shard key> : <max range2> } on : <shard name> <last modified timestamp>
...
tag: <tag1> { <shard key> : <min range1> } -->> { <shard key> : <max range1> }
...
sh.status.sharding-version._id

_idは、バージョンの詳細の識別子です。

sh.status.sharding-version.minCompatibleVersion

minCompatibleVersion は互換性のあるコンフィギュレーションサーバーの最小バージョンです。

sh.status.sharding-version.currentVersion

currentVersionはコンフィギュレーションサーバーの現在のバージョンです。

sh.status.sharding-version.clusterId

clusterIdは、シャーディングされたクラスターの ID です。

バージョン 3.2 で追加

sh.status.active-mongoses

verbosefalseの場合、 sh.status.active-mongosesにはアクティブなmongosインスタンスのバージョンと数が表示されます。 アクティブなmongosインスタンスは、過去60秒以内に ping されたmongosインスタンスです。

verbosetrueの場合、 はアクティブなmongosインスタンスごとに返します。

  • ホスト名とポート。

  • インスタンスの完全修飾ドメイン名(FQDN)の配列。

  • MongoDB のバージョン

  • 最新の ping 日時。

  • 最後の ping 以降のアップタイム。

  • 待機状態。

active mongoses:
{ "_id" : "<hostname:port>", "advisoryHostFQDNs" : [ "<name>" ], "mongoVersion" : <string>, "ping" : <ISODate>, "up" : <long>, "waiting" : <boolean> }
...
sh.status.autosplit

sh.status.autosplit 自動分割が現在有効になっているかどうかを示します。

注意

MongoDB 4.2 以降:

mongoメソッドsh.enableBalancing(namespace)sh.disableBalancing(namespace)は自動分割には影響しません。

sh.status.shards._id

_idにはシャード名が表示されます。

sh.status.shards.host

hostにはシャードのホストロケーションが表示されます。

sh.status.shards.tags

tagsにはシャードのすべてのタグが表示されます。 このフィールドは、シャードに タグ がある場合にのみ表示されます。

sh.status.shards.state

バージョン 3.4 で追加

stateには次の内容が表示されます。

  • 0 シャードがシャード認識されていない場合。

  • 1 シャードがシャード認識されている場合。

注意

MongoDB 4.2 以降:

mongoメソッドsh.enableBalancing(namespace)sh.disableBalancing(namespace)は自動分割には影響しません。

sh.status.balancer.currently-enabled

currently-enabled は、シャーディングされたクラスターでバランサーが現在有効になっているかどうかを示します。

sh.status.balancer.currently-running

currently-runningは、バランサーが現在実行中かどうか、およびクラスターの現在バランシングが実行されているかどうかを示します。

sh.status.balancer.collections-with-active-migrations

collections-with-active-migrationsでは、アクティブな移行があるすべてのコレクションの名前が一覧表示され、移行がいつ開始されたかを指定します。 アクティブな移行がない場合、このフィールドはsh.status()出力に表示されません。

sh.status.balancer.failed-balancer-rounds-in-last-5-attempts

failed-balancer-rounds-in-last-5-attempts には、最近試行された 5 ラウンドのうち、失敗したバランサー ラウンドの数が表示されます。チャンクの移行が失敗すると、バランサー ラウンドは失敗します。

sh.status.balancer.last-reported-error

last-reported-errorには最新のバランサー エラー メッセージが表示されます。 エラーが発生していない場合、このフィールドはsh.status()の出力に表示されません。

sh.status.balancer.time-of-reported-error

time-of-reported-error は、直近に報告されたエラーの日時を提供します。

sh.status.balancer.migration-results-for-the-last-24-hours

migration-results-for-the-last-24-hours には、過去 24 時間の移行の数と、失敗した移行からのエラー メッセージが表示されます。直近で移行が行われていない場合、 migration-results-for-the-last-24-hours には No recent migrations が表示されます。

migration-results-for-the-last-24-hours にはバランサーによって開始されていない移行を含む、すべての移行が含まれます。

sh.status.databases._id

_idにはデータベース名が表示されます。

sh.status.databases.partitioned

partitionedには、データベースでシャーディングが有効になっているかどうかが表示されます。 trueの場合、データベースでシャーディングが有効になっています。

sh.status.databases.primary

primaryにはデータベースのプライマリシャードが表示されます。

sh.status.databases.version

versionにはデータベースのバージョン情報が表示されます。

{ "uuid" : UUID("cc250b66-8638-49f7-a2e8-c6f1220b9d7a"), "lastMod" : 1 }

以下の条件に一致するもの。

  • uuid が、データベース識別子です。

  • lastMod はデータベースのバージョンです。

sh.status.databases.<collection>.shard-key

shard-key にはシャードキー仕様ドキュメントが表示されます。

sh.status.databases.<collection>.unique

uniqueには、MongoDB がシャードキー値( 基礎となるシャードキー インデックスが一意であるかどうか)。

バージョン 3.2 で追加

sh.status.databases.<collection>.balancing

バランサーがコレクションのバランスをとれるかどうかを表示。 バランサーが有効になっており、このステータスがtrueを返す場合、バランサーはバランサー操作にこのコレクションを含めます。 ステータスがfalseを返す場合、バランサーがこのコレクション内のデータをバランス調整していないことを示します。

バージョン 3.2 で追加

sh.status.databases.<collection>.chunks

chunksには、すべてのシャードと各シャードにあるチャンクの数が一覧表示されます。

sh.status.databases.<collection>.chunk-details

chunk-details には次のようなチャンク [1] の詳細が一覧化されます。

  • チャンクを定義するシャードキー値の範囲、

  • チャンクが存在するシャード、および

  • チャンクの最終変更タイムスタンプ。

sh.status.databases.<collection>.tag

tag には、シャード キー値の範囲に関連付けられたタグの詳細が一覧表示されます。

Tip

以下も参照してください。

[1]12シャーディングされたコレクション セクションには、デフォルトでは、チャンクの合計数が20未満の場合、チャンク情報が表示されます。 20以上のチャンクがあるときに 情報を表示するには、 verboseパラメータをtrue (つまりsh.status(true) )に設定してsh.status()メソッドを呼び出します。

戻る

sh.startBalancer