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

serverStatus

項目一覧

  • 定義
  • 互換性
  • 構文
  • 動作
  • 初期化
  • 次を含みます: latchAnalysis
  • tcmalloc冗長度を変更する
  • 出力
  • 主張する
  • batchedDeletes
  • バケットカタログ
  • catalogStats
  • 接続
  • デフォルト RWConcern
  • electionMetrics(選挙メトリクス)
  • extra_info
  • フロー制御
  • グローバルロック
  • ヘッジメトリクス
  • indexBuilds
  • インデックスバルクビルダー
  • indexStats
  • インスタンス情報
  • latchAnalysis
  • ロック
  • logicalSessionRecordCache
  • mem
  • メトリクス
  • ミラー読み取り
  • ネットワーク
  • opLatencies
  • opReadConcernCounters
  • opWriteConcernCounters
  • opcounters
  • opcountersRepl
  • oplogTruncation
  • planCache
  • queryStats
  • クエリアナライザー
  • readConcernCounters
  • readPreferenceCounters (英語)
  • レプラー
  • セキュリティ
  • シャーディング
  • シャーディング統計
  • shardedIndexConsistency
  • ストレージエンジン用
  • トランザクション
  • 輸送セキュリティ
  • ウォッチドッグ
  • WiredTiger
  • writeBacksQueued
serverStatus

serverStatus コマンドは、データベースの状態の概要を示すドキュメントを返します。監視アプリケーションションがこのコマンドを定期的に実行して、インスタンスに関する統計を収集します。

このコマンドは、次の環境でホストされている配置で使用できます。

  • MongoDB Atlas はクラウドでの MongoDB 配置のためのフルマネージド サービスです

注意

このコマンドは、すべてのMongoDB Atlasクラスターでサポートされています。すべてのコマンドの Atlas サポートの詳細については、「 サポートされていないコマンド 」を参照してください。

  • MongoDB Enterprise: サブスクリプションベースの自己管理型 MongoDB バージョン

  • MongoDB Community: ソースが利用可能で、無料で使用できる自己管理型の MongoDB のバージョン

このコマンドの構文は、次のとおりです。

db.runCommand(
{
serverStatus: 1
}
)

値(つまり1 上記)は、コマンドの操作に影響を与えません。db.serverStatus() コマンドは大量のデータを返します。出力から特定のオブジェクトまたはフィールドを返すには、コマンドにオブジェクト名またはフィールド名を追加します。

以下に例を挙げます。

db.runCommand({ serverStatus: 1}).metrics
db.runCommand({ serverStatus: 1}).metrics.commands
db.runCommand({ serverStatus: 1}).metrics.commands.update

mongosh は、serverStatus コマンドの db.serverStatus() ラッパーを提供します。

Tip

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

serverStatus の出力の多くは、mongostat によっても動的に表示されます。詳細については、mongostat コマンドを参照してください。

デフォルトでは、serverStatus 出力から以下が除外されます:

  • repl ドキュメント内の一部のコンテンツ

  • mirroredReads ドキュメント

デフォルトで除外されるフィールドを含めるには、最上位フィールドを指定し、コマンドで 1 に設定します。デフォルトで含まれるフィールドを除外するには、フィールドを指定して 0 に設定します。最上位フィールドまたは埋め込みフィールドのいずれかを指定できます。

たとえば、次の操作では、出力の replmetricslocks の情報が除外されます。

db.runCommand( { serverStatus: 1, repl: 0, metrics: 0, locks: 0 } )

たとえば、次の操作では、出力に埋め込まれたhistogramフィールドが除外されます。

db.runCommand( { serverStatus: 1, metrics: { query: { multiPlanner: { histograms: false } } } } )

次の例では、出力にすべての repl 情報が含まれています。

db.runCommand( { serverStatus: 1, repl: 1 } )

serverStatus によって報告された統計は、mongod サーバーを再起動するとリセットされます。

このコマンドは、新しいデータベースでも常に値を返します。関連コマンド db.serverStatus() は、特定のメトリクスでカウンターが増加し始めてからでない限り、常に値を返すとは限りません。

アップデートクエリを実行すると、 db.serverStatus()db.runCommand({ serverStatus: 1})の両方が同じ値を返します。

{
arrayFilters : Long("0"),
failed : Long("0"),
pipeline : Long("0"),
total : Long("1")
}

デフォルトでは、latchAnalysis 情報は出力に含まれていません。latchAnalysis 情報を返すには、包含を明示的に指定する必要があります。

db.runCommand( { serverStatus: 1, latchAnalysis: 1 } )

デフォルトでは、 tcmalloc 情報が出力に含まれます。このセクションでは、データベースのメモリ割り当て統計を提供します。tcmalloc セクションの冗長度を変更するには、0 から 2 (両端を含む)までの整数を指定します。

db.runCommand( { serverStatus: 1, tcmalloc: <int> } )

このコマンドの動作は次のとおりです。

  • デフォルトでは、 tcmalloc1に設定されています。

  • より大きな整数値を渡すと、冗長性が増します。

  • 0またはfalseを渡すと、出力からtcmallocセクションが省略されます。

  • 他の入力を渡すと、デフォルト設定になります。

MongoDB がメモリを割り当てる方法の詳細については、TCMalloc を参照してください。

注意

出力フィールドは、MongoDB のバージョン、基礎のオペレーティングシステムプラットフォーム、storage engine、およびノードの種類(mongosmongodレプリカセットノードなど)によって異なります。

MongoDB のバージョンに固有の serverStatus 出力については、適切なバージョンの MongoDB マニュアルを参照してください。

asserts : {
regular : <num>,
warning : <num>,
msg : <num>,
user : <num>,
rollovers : <num>
},
asserts

MongoDB プロセスの開始以降に発生したアサーションの数を報告するドキュメント。アサーションは、データベースの稼働中に発生するエラーを内部でチェックするもので、MongoDB サーバーの問題の診断に役立ちます。アサート値がゼロでない場合はアサーションエラーとなりますが、これはまれであり、すぐに問題になるわけではありません。アサートを生成するエラーは、ログファイルに記録できるほか、クライアントのアプリケーションに直接返して詳細を確認することができます。

asserts.regular

MongoDB プロセスが開始してから発生した通常のアサーションの数。 詳細については、MongoDB ログを調べてください。

asserts.warning

このフィールドは常にゼロ 0を返します。

asserts.msg

MongoDB プロセスが開始してから発生したメッセージアサーションの数。これらのメッセージの詳細については、ログファイルを調べてください。

asserts.user

MongoDB プロセスが最後に開始されて以降に発生した "ユーザー アサート" の数。 ディスク容量不足や重複キーなど、ユーザーによって生成される可能性のあるエラーです。 アプリケーションまたは配置で問題を修正することで、これらのアサートを防ぐことができます。 これらのメッセージの詳細については、ログファイルを調べてください。

asserts.rollovers

MongoDB プロセスが最後に開始されてからアサート カウンターがロールオーバーされた回数。カウンターは、2 30 アサーション後にゼロに戻ります。この値を使用して、asserts データ構造内の他の値にコンテキストを提供します。

batchedDeletes: {
batches: <num>,
docs: <num>,
stagedSizeBytes: <num>,
timeInBatchMillis: <num>,
refetchesDueToYield: <num>
},

すべてのバッチ削除に関連するメトリクスを報告するドキュメント。

batchedDeletesは次のメトリクスを返します。

メトリクス
説明
batches
docs
stagedSizeBytes
timeInBatchMillis
refetchesDueToYield
bucketCatalog : {
numBuckets : <num>,
numOpenBuckets : <num>,
numIdleBuckets : <num>,
memoryUsage : <num>
}

時系列コレクションの内部ストレージに関連するメトリクスをレポートするドキュメント。

bucketCatalogは次のメトリクスを返します。

メトリクス
説明
numBuckets
時系列データを内部的にストアするバケットの数。
numOpenBuckets
バケットへのコミットされていないアクティブな書込み (write) の数。
numIdleBuckets
満杯ではなく、受信した時系列データをストアできるバケットの数。
memoryUsage
内部バケットデータ構造によって使用されるバイト数。

バージョン 5.0 で追加

バージョン 5.1 で追加

catalogStats: {
collections: <num>,
capped: <num>,
views: <num>,
timeseries: <num>,
internalCollections: <num>,
internalViews: <num>
}
catalogStats

コレクション カウントを通じてコレクションの使用に関する統計を報告するドキュメント。

catalogStats.collections

ユーザー コレクションの合計数(システム コレクションは含みません)。

catalogStats.capped

Capped ユーザー コレクションの合計数。

catalogStats.views

ユーザー ビューの合計数。

catalogStats.timeseries

時系列コレクションの合計数。

catalogStats.internalCollections

システム コレクション( configadmin 、またはlocalデータベース上のコレクション)の合計数。

catalogStats.internalViews

システム コレクション(configadmin、または local の各データベース上のコレクション)の合計ビュー数。

connections : {
current : <num>,
available : <num>,
totalCreated : <num>,
rejected : <num>, // Added in MongoDB 6.3
active : <num>,
threaded : <num>,
exhaustIsMaster : <num>,
exhaustHello : <num>,
awaitingTopologyChanges : <num>,
loadBalanced : <num>
},
connections

接続のステータスを報告するドキュメント。これらの値を使用して、サーバーの現在の負荷とキャパシティーの要件を評価します。

connections.current

クライアントからデータベース サーバへの着信接続の数。この数には、現在の shell セッションが含まれます。このデータにさらにコンテキストを追加するには、connections.available の値を考慮します。

この値には、shell 接続やレプリカセットノード、 mongosインスタンスなどの他のサーバーからの接続を含むすべての着信接続が含まれます。

connections.available

利用可能な未使用の着信接続の数。データベースの接続負荷を理解するには、この値をconnections.currentの値と組み合わせて検討します。また、利用可能な接続のシステムしきい値の詳細については「自己管理型配置の UNIX ulimit設定」ドキュメントを参照してください。

connections.totalCreated

サーバーへのすべての着信接続数。この数字には、閉鎖されたコネクションも含まれています。

connections.rejected

バージョン 6.3 で追加

サーバーが追加の接続を受け入れるためのキャパシティーがないか、 net.maxIncomingConnections設定に達したために拒否された着信接続の数。

connections.active

サーバーへのアクティブなクライアント接続の数。アクティブなクライアント接続とは、現在操作が進行中のクライアント接続を指す。

connections.threaded

クライアントのリクエストを処理するスレッドに割り当てられるクライアントからの着信接続の数。

バージョン 5.0 で追加

connections.exhaustIsMaster

最後のリクエストが exhaustAllowed のisMasterリクエストであった接続の数

注意

MongoDB 5.0 以降を実行している場合は、 isMasterコマンドを使用しないでください。代わりに、 helloを使用してください。

connections.exhaustHello

最後のリクエストが exhaustAllowed のhelloリクエストであった接続の数

バージョン 5.0 で追加

connections.awaitingTopologyChanges

現在、トポロジー変更のhelloまたはisMasterリクエストを待機しているクライアントの数。

注意

MongoDB 5.0 以降を実行している場合は、 isMasterコマンドを使用しないでください。代わりに、 helloを使用してください。

connections.loadBalanced

バージョン 5.3 で追加。

ロードバランサーを介して受信した着信接続の現在の数。

defaultRWConcern セクションには、グローバルデフォルトの読み取りまたは書込み保証 (write concern) に関する設定のローカルコピーに関する情報が記載されています。データが古くなっているか、期限切れになっている可能性があります。詳細についてはgetDefaultRWConcernを参照してください。

defaultRWConcern : {
defaultReadConcern : {
level : <string>
},
defaultWriteConcern : {
w : <string> | <int>,
wtimeout : <int>,
j : <bool>
},
defaultWriteConcernSource: <string>,
defaultReadConcernSource: <string>,
updateOpTime : Timestamp,
updateWallClockTime : Date,
localUpdateWallClockTime : Date
}
defaultRWConcern

最後に確認されたグローバルデフォルトの読み取りまたは書込み保証 (write concern) 設定です。

defaultRWConcern.defaultReadConcern

最後に確認されたグローバルデフォルトの読み取り保証 (read concern) 設定です

serverStatus がこのフィールドを返さない場合、グローバルなデフォルトの読み取り保証(read concern)が設定されていないか、またはインスタンスにまだ反映されていません。

defaultRWConcern.defaultReadConcern.level

最後に確認されたグローバルデフォルトの読み取り保証 (read concern) レベル設定です

serverStatus がこのフィールドを返さない場合、この設定のグローバルなデフォルトが設定されていないか、またはインスタンスにまだ反映されていません。

defaultRWConcern.defaultWriteConcern

最後に確認されたグローバルデフォルトの書込み保証 (write concern) 設定です

serverStatus がこのフィールドを返さない場合、グローバルなデフォルト書き込み保証(write concern)が設定されていないか、またはインスタンスにまだ反映されていません。

defaultRWConcern.defaultWriteConcern.w

最後に確認されたグローバルデフォルトw設定。

serverStatus がこのフィールドを返さない場合、この設定のグローバルなデフォルトが設定されていないか、またはインスタンスにまだ反映されていません。

defaultRWConcern.defaultWriteConcern.wtimeout

最後に確認されたグローバルデフォルトwtimeout設定。

serverStatus がこのフィールドを返さない場合、この設定のグローバルなデフォルトが設定されていないか、またはインスタンスにまだ反映されていません。

defaultRWConcern.defaultWriteConcernSource

デフォルトの書込み保証 (write concern) のソース。デフォルトでは、値は"implicit"です。デフォルトの書込み保証 (write concern) をsetDefaultRWConcernに設定すると、値は"global"になります。

バージョン 5.0 で追加

defaultRWConcern.defaultReadConcernSource

デフォルトの読み取り保証 (read concern) のソース。デフォルトでは、値は"implicit"です。デフォルトの読み取り保証 (read concern) をsetDefaultRWConcernに設定すると、値は"global"になります。

バージョン 5.0 で追加

defaultRWConcern.updateOpTime

インスタンスがグローバルな読み取り保証(read concern)または書き込み保証(write concern)設定のコピーを最後にアップデートしたときのタイムスタンプ。defaultRWConcern.defaultReadConcern フィールドと defaultRWConcern.defaultWriteConcern フィールドが存在しない場合、このフィールドはデフォルトが最後に設定解除されたときのタイムスタンプを示します。

defaultRWConcern.updateWallClockTime

インスタンスがグローバルな読み取り保証(read concern)または書き込み保証(write concern)設定のコピーを最後に更新したウォール クロックの時間。defaultRWConcern.defaultReadConcern フィールドと defaultRWConcern.defaultWriteConcern フィールドが存在しない場合、このフィールドはデフォルトが最後に設定解除された時間を示します。

defaultRWConcern.localUpdateWallClockTime

インスタンスがグローバルな読み取り保証(read concern)または書き込み保証(write concern)設定のコピーを最後に更新したローカル システムのウォール クロックの時間。このフィールドが defaultRWConcern の下の唯一のフィールドである場合、インスタンスはグローバルなデフォルトの読み取り保証または書き込み保証を認識していません。

electionMetrics セクションには、この mongod インスタンスがプライマリになるために呼び出した選挙に関する情報が記載されています。

electionMetrics : {
stepUpCmd : {
called : Long("<num>"),
successful : Long("<num>")
},
priorityTakeover : {
called : Long("<num>"),
successful : Long("<num>")
},
catchUpTakeover : {
called : Long("<num>"),
successful : Long("<num>")
},
electionTimeout : {
called : Long("<num>"),
successful : Long("<num>")
},
freezeTimeout : {
called : Long("<num>"),
successful : Long("<num>")
},
numStepDownsCausedByHigherTerm : Long("<num>"),
numCatchUps : Long("<num>"),
numCatchUpsSucceeded : Long("<num>"),
numCatchUpsAlreadyCaughtUp : Long("<num>"),
numCatchUpsSkipped : Long("<num>"),
numCatchUpsTimedOut : Long("<num>"),
numCatchUpsFailedWithError : Long("<num>"),
numCatchUpsFailedWithNewTerm : Long("<num>"),
numCatchUpsFailedWithReplSetAbortPrimaryCatchUpCmd : Long("<num>"),
averageCatchUpOps : <double>
}
electionMetrics.stepUpCmd

プライマリの辞任時に選挙の引き継ぎの一環として mongod インスタンスによって呼び出された選挙に関するメトリクス。

stepUpCmd には、呼び出された選挙の数と成功した選挙の数の両方が含まれます。

electionMetrics.priorityTakeover

mongodpriorityがプライマリよりも高いため、インスタンスによって呼び出された選挙のメトリクス。

electionMetrics.priorityTakeover には、呼び出された選挙の数と成功した選挙の数の両方が含まれます。

electionMetrics.catchUpTakeover

mongod インスタンスがプライマリよりも最新であるため、選挙に関するメトリクスが呼び出されます。

catchUpTakeover には、呼び出された選挙の数と成功した選挙の数の両方が含まれます。

Tip

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

electionMetrics.electionTimeout

以内にプライマリに到達できなかったため、mongodsettings.electionTimeoutMillis インスタンスによって呼び出された選挙に関するメトリクス。

electionTimeout には、呼び出された選挙の数と成功した選挙の数の両方が含まれます。

Tip

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

electionMetrics.freezeTimeout

mongodfreeze period(ノードが選出を求めることができない期間)の有効期限が切れた後に、インスタンスによって呼び出される選挙に関するメトリクス。

electionMetrics.freezeTimeout には、呼び出された選挙の数と成功した選挙の数の両方が含まれます。

electionMetrics.numStepDownsCausedByHigherTerm

mongodインスタンスが、タームが長くなったために辞任した回数(具体的には、他のノードが追加の選挙に参加した)。

electionMetrics.numCatchUps

新たに選出されたプライマリとしてのmongodインスタンスが、最も高い既知の oplog エントリに追いつく必要があった選挙の数。

electionMetrics.numCatchUpsSucceeded

新たに選出されたプライマリの mongod インスタンスが、既知の最高の oplog エントリに正常に追いついた回数。

electionMetrics.numCatchUpsAlreadyCaughtUp

新たに選出された予備選挙の mongod インスタンスが、選出時にすでに追いついていたためにキャッチアッププロセスを終了した回数。

electionMetrics.numCatchUpsSkipped

新たに選出されたプライマリの mongod インスタンスがキャッチアッププロセスをスキップした回数。

electionMetrics.numCatchUpsTimedOut

新たに選出されたプライマリとしてのmongodインスタンスが、 settings.catchUpTimeoutMillis制限のためにキャッチアッププロセスを終了した回数。

electionMetrics.numCatchUpsFailedWithError

新たに選出されたプライマリのキャッチアッププロセスがエラーで失敗した回数。

electionMetrics.numCatchUpsFailedWithNewTerm

他のノードのタームが長かったため(具体的には、他のノードが追加選挙に参加したため)、新たに選出されたプライマリの追い上げプロセスが終了した回数。

electionMetrics.numCatchUpsFailedWithReplSetAbortPrimaryCatchUpCmd

mongodreplSetAbortPrimaryCatchUpコマンドを受信したため、新たに選出されたプライマリのキャッチアッププロセスが終了した回数。

electionMetrics.averageCatchUpOps

新たに選出されたプライマリのキャッチアッププロセス中に適用される操作の平均数。

extra_info : {
note : 'fields vary by platform',
page_faults : <num>
},
extra_info

基礎のシステムに関する追加情報を提供するドキュメント。

extra_info.note

テキストを含む文字列 'fields vary by platform'

extra_info.page_faults

ページ フォールトの合計数。extra_info.page_faults カウンターは、パフォーマンスが低下しているときに大幅に増加する可能性があり、メモリが制限された環境や大規模なデータセットと相関する可能性があります。限定的かつ散発的なページ フォールトは必ずしも問題を示すものではありません。

Windows では、ディスク I/O に関係する "ハード" ページフォールトと、メモリ内のページ移動のみを必要とする "ソフト" ページフォールトとを区別しています。MongoDB はこの統計でハードページフォールトとソフトページフォールトの両方をカウントします。

flowControl : {
enabled : <boolean>,
targetRateLimit : <int>,
timeAcquiringMicros : Long("<num>"),
locksPerKiloOp : <double>,
sustainerRate : <int>,
isLagged : <boolean>,
isLaggedCount : <int>,
isLaggedTimeMicros : Long("<num>")
},
flowControl

フロー制御に関する統計を返すドキュメント。フロー制御を有効にすると、 majority commit点の遅延がflowControlTargetLagSecondsに近づくにつれて、プライマリへの書込み (write)はロックを取得する前にチケットを取得する必要があります。そのため、返されるメトリクスはプライマリで実行する場合に意味を持ちます。

flowControl.enabled

フロー制御が有効 ( true ) か無効 ( false ) かを示すブール値。

enableFlowControl も参照してください。

flowControl.targetRateLimit

プライマリで実行する場合、1秒間に獲得できるチケットの最大枚数。

セカンダリで実行する場合、返される数値はプレースホルダーになります。

flowControl.timeAcquiringMicros

プライマリで実行する場合、書込み (write) 操作がチケットを取得するために待機した合計時間。

セカンダリで実行する場合、返される数値はプレースホルダーになります。

flowControl.locksPerKiloOp

プライマリで実行する場合、1000回の操作にかかるロックの数の近似値。

セカンダリで実行する場合、返される数値はプレースホルダーになります。

flowControl.sustainerRate

プライマリで実行する場合、コミットする点を維持しているセカンダリが 1 秒あたりに適用する操作の近似値。

セカンダリで実行する場合、返される数値はプレースホルダーになります。

flowControl.isLagged

プライマリで実行される場合、フロー制御が有効になっているかどうかを示すブール値。フロー制御は、コミットされたラグの過半数が設定された flowControlTargetLagSeconds のパーセンテージよりも大きい場合に実行されます。

フロー制御を行わないと、レプリケーションラグが発生する可能性があります。応答しないセカンダリでは、レプリカセットがフロー制御を実行するのに十分な負荷を受け取らずに遅延が発生する可能性があり、flowControl.isLagged 値は false のままになります。

詳細については、 「フロー制御」を参照してください。

flowControl.isLaggedCount

プライマリで実行された場合、最後の再起動以降にフロー制御が実行された回数。フロー制御は、コミットされた大多数のラグがflowControlTargetLagSecondsの特定のパーセンテージを超えると有効になります。

セカンダリで実行する場合、返される数値はプレースホルダーになります。

flowControl.isLaggedTimeMicros

プライマリで実行された場合、最後の再起動以降にフロー制御が実行された時間の長さ。フロー制御は、コミットされた大多数のラグがflowControlTargetLagSecondsの特定のパーセンテージを超えると有効になります。

セカンダリで実行する場合、返される数値はプレースホルダーになります。

globalLock : {
totalTime : Long("<num>"),
currentQueue : {
total : <num>,
readers : <num>,
writers : <num>
},
activeClients : {
total : <num>,
readers : <num>,
writers : <num>
}
},
globalLock

データベースのロック状態についてレポートするドキュメント。

一般的に、ロックのドキュメントでは、ロックの使用に関するより詳細なデータが提供されています。

globalLock.totalTime

データベースが最後に起動され globalLock を作成してから経過した時間(マイクロ秒単位)。これはサーバーの合計アップタイムとほぼ同じです。

globalLock.currentQueue

ロックのためにキューに入れられた操作の数に関する情報を提供するドキュメント。

globalLock.currentQueue.total

ロックを待機しているキューに入れられた操作の合計数(つまり globalLock.currentQueue.readersglobalLock.currentQueue.writers の合計)。

特に短い操作の場合、キューが一貫して小さいと、問題が発生することはありません。globalLock.activeClients リーダーとライターの情報は、このデータのコンテキストを提供します。

globalLock.currentQueue.readers

現在キューに入れられ、読み取りロック(read lock)を待機している操作の数。特に短い操作の読み取りキューが一貫して小さい場合は、問題にはなりません。

globalLock.currentQueue.writers

現在、キューにあり、書込みロック(write lock)を待機している操作の数。特に短い操作の書込み(write)キューが一貫して小さい場合は、心配する必要はありません。

globalLock.activeClients

接続されたクライアント数と、これらのクライアントが実行した読み取りおよび書込み(write)操作に関する情報を提供するドキュメント。

このデータを使用して、globalLock.currentQueue データのコンテキストを提供します。

globalLock.activeClients.total

データベースにおける内部クライアント接続の総数(システム スレッドとキュー内にある読み取りおよび書込みを含む)。システム スレッドが含まれるため、このメトリクスは activeClients.readersactiveClients.writers の合計よりも高い値になります。

globalLock.activeClients.readers

読み取り操作を実行しているアクティブなクライアント接続の数。

globalLock.activeClients.writers

書込み(write)操作を実行しているアクティブなクライアント接続数。

mongos インスタンスのみ。

hedgingMetrics : {
numTotalOperations : <num>,
numTotalHedgedOperations : <num>,
numAdvantageouslyHedgedOperations : <num>
},
hedgingMetrics

mongos インスタンスについてヘッジされた読み取りに関するメトリクスを提供します。

mongos インスタンスのみ。

hedgingMetrics.numTotalOperations

この mongos インスタンスに対するヘッジされた読み取りオプションを有効にして発行された操作の合計数。

mongos インスタンスのみ。

hedgingMetrics.numTotalHedgedOperations

クエリされた各シャードの追加ノードに操作を送信するなど、mongos インスタンスが読み取り操作をヘッジしたすべての操作の数。

mongos インスタンスのみ。

hedgingMetrics.numAdvantageouslyHedgedOperations

読み取り操作をヘッジするために送信された追加の読み取りによって、クライアントのリクエストが満たされた操作の合計数。

mongos インスタンスのみ。

indexBuilds : {
total : <num>,
phases : {
scanCollection : <num>,
drainSideWritesTable: <num>,
drainSideWritesTablePreCommit: <num>,
waitForCommitQuorum: <num>,
drainSideWritesTableOnCommit: <num>,
processConstraintsViolatonTableOnCommit: <num>,
commit: <num>
}
}
indexBuilds

インデックス構築のメトリクスを提供するドキュメント。これらのメトリクスを使用して、インデックス構築の問題を診断します。

注意

indexBuildsactiveIndexBuilds フィールドを置き換えます。

バージョン 6.1 で追加

indexBuilds.total

進行中および完了したインデックス構築の合計数。

バージョン 6.1 で追加

indexBuilds.phases

インデックス構築プロセスの各ステージのカウンターを提供するドキュメント。indexBuilds.phases の下の各サブフィールドは、インデックス構築が指定されたステージに達すると増加します。

バージョン 6.1 で追加

indexBulkBuilder: {
count: <long>,
resumed: <long>,
filesOpenedForExternalSort: <long>,
filesClosedForExternalSort: <long>,
spilledRanges: <long>,
bytesSpilledUncompressed: <long>,
bytesSpilled: <long>,
numSorted: <long>,
bytesSorted: <long>,
memUsage: <long>
}
indexBulkBuilder

インデックス バルク ビルダ操作のメトリクスを提供します。これらのメトリクスを使用して、createIndexes によるインデックス構築の問題、最初の同期中のコレクション クローニング、スタートアップで再開されるインデックス構築、外部ソーターによるディスク使用量の統計を診断できます。

indexBuildBuilder.bytesSpilled

バージョン 6.0.4 の新機能

外部ソーターによってディスクに書き込まれたバイト数。

indexBuilder.bytesSpilledUncompressed

バージョン 6.0.4 の新機能

圧縮前に外部ソーターによってディスクに書き込まれるバイト数。

indexBulkBuilder.count

作成されたバルク ビルダのインスタンスの数。

indexBulkBuilder.filesClosedForExternalSort

外部ソーターがファイル処理を閉じてディスクにデータを流出させた回数。この値を filesOpenedForExternalSort と組み合わせて、外部ソーターが使用している開いたファイル処理の数を判断します。

indexBulkBuilder.filesOpenedForExternalSort

外部ソーターがファイル処理を開いてディスクにデータを流出させた回数。この値を filesClosedForExternalSort と組み合わせて、外部ソーターが使用している開いたファイル処理の数を判断します。

indexBulkBuilder.resumed

再開可能なインデックス構築のためにバルク ビルダが作成された回数。

indexBulkBuilder.spilledRanges

バージョン 6.0.4 の新機能

外部ソーターがディスクに流出させた回数。

indexBulkBuilder.numSorted

バージョン 6.3 で追加

ソートされたドキュメントの合計数。

indexBulkBuilder.bytesSorted

バージョン 6.3 で追加

ソートされたドキュメントの合計バイト数。たとえば、合計 10 個のドキュメントがソートされ、各ドキュメントが 20 バイトの場合、ソートされた合計バイト数は 200 バイトになります。

indexBulkBuilder.memUsage

バージョン 6.3 で追加

インデックスの構築に割り当てられたメモリの現在のバイト数。

indexStats: {
count: Long("<num>"),
features: {
'2d': { count: Long("<num>"), accesses: Long("<num>") },
'2dsphere': { count: Long("<num>"), accesses: Long("<num>") },
'2dsphere_bucket': { count: Long("<num>"), accesses: Long("<num>") },
collation: { count: Long("<num>"), accesses: Long("<num>") },
compound: { count: Long("<num>"), accesses: Long("<num>") },
hashed: { count: Long("<num>"), accesses: Long("<num>") },
id: { count: Long("<num>"), accesses: Long("<num>") },
normal: { count: Long("<num>"), accesses: Long("<num>") },
partial: { count: Long("<num>"), accesses: Long("<num>") },
single: { count: Long("<num>"), accesses: Long("<num>") },
sparse: { count: Long("<num>"), accesses: Long("<num>") },
text: { count: Long("<num>"), accesses: Long("<num>") },
ttl: { count: Long("<num>"), accesses: Long("<num>") },
unique: { count: Long("<num>"), accesses: Long("<num>") },
wildcard: { count: Long("<num>"), accesses: Long("<num>") }
}
}
indexStats

データベースとコレクションのすべてのインデックスの統計を報告するドキュメント。

バージョン 6.0 で追加。

indexStats.count

インデックスの合計数。

バージョン 6.0 で追加。

indexStats.features

各インデックス タイプのカウンターと各インデックスのアクセス数を提供するドキュメント。indexStats.features の下の各インデックス・タイプには、そのタイプのインデックスの合計数をカウントする count フィールドと、そのインデックスのアクセス数をカウントするaccesses フィールドがあります。

バージョン 6.0 で追加。

host : <string>,
advisoryHostFQDNs : <array>,
version : <string>,
process : <'mongod'|'mongos'>,
pid : Long("<num>"),
uptime : <num>,
uptimeMillis : Long("<num>"),
uptimeEstimate : Long("<num>"),
localTime : ISODate("<Date>"),
host

システムのホスト名。Unix/Linux システムでは、これは hostname コマンドの出力と同じになります。

advisoryHostFQDNs

システムの完全修飾ドメイン名(FQDN)の配列。

version

現在の MongoDB プロセスの MongoDB バージョン。

process

現在の MongoDB プロセス。可能な値は mongos または mongod です。

pid

プロセス ID 番号。

uptime

現在の MongoDB プロセスがアクティブになっている秒数。

uptimeMillis

現在の MongoDB プロセスがアクティブになっているミリ秒数。

uptimeEstimate

MongoDB 内部の時間管理システムから計算した秒単位の稼働時間。

localTime

サーバーによる現在時刻を UTC で表した ISODate。

バージョン 4.4 で追加

latchAnalysis : {
<latch name> : {
created : <num>,
destroyed : <num>,
acquired : <num>,
released : <num>,
contended : <num>,
hierarchicalAcquisitionLevelViolations : {
onAcquire : <num>,
onRelease : <num>
}
},
...
latchAnalysis

内部のロック プリミティブ(ラッチとも呼ばれる)に関するメトリクスを報告するドキュメント。

latchAnalysis 情報を返すには、包含を明示的に指定する必要があります。

db.runCommand( { serverStatus: 1, latchAnalysis: 1 } )

latchAnalysis は、各ラッチに対して <latch name> と以下の関連メトリクスを返します:

メトリクス
説明
created
ラッチが作成された回数。
destroyed
ラッチが破壊された回数。
acquired
ラッチが取得された回数。
released
ラッチがリリースされた回数。
contended
ラッチが競合した回数。
hierarchicalAcquisitionLevelViolations

違反が存在する場合にのみ返されます

次のフィールドが含まれます:

  • onAcquire

    • ラッチの取得中にラッチ階層(ラッチ レベルの順序)が違反された回数。

  • onRelease

    • ラッチのリリース中にラッチ階層(ラッチ レベルの順序)が違反された回数。

バージョン 4.4 で追加

locks : {
<type> : {
acquireCount : {
<mode> : Long("<num>"),
...
},
acquireWaitCount : {
<mode> : Long("<num>"),
...
},
timeAcquiringMicros : {
<mode> : Long("<num>"),
...
},
deadlockCount : {
<mode> : Long("<num>"),
...
}
},
...
locks

各ロック <type> について、ロック <modes> のデータを報告するドキュメントです。

可能なロック <types> は、次のとおりです。

ロック タイプ
説明
ParallelBatchWriterMode

並列バッチ書込みモードのロックを表します。

以前のバージョンでは、PBWM 情報は Global ロック情報の一部として報告されていました。

ReplicationStateTransition
レプリカセットの状態遷移に対して取得されたロックを表します。
Global
グローバル ロックを表します。
Database
データベース ロックを表します。
Collection
コレクション ロックを表します。
Mutex
ミューテックスを表します。
Metadata
メタデータ ロックを表します。
oplog
oplog のロックを表します。

可能な <modes> は、次のとおりです。

ロックモード
説明
R
共有ロック(S)を表します。
W
排他ロック(X)を表します。
r
インテント共有ロック(IS)を表します。
w
インテント排他ロック(IX)を表します。

すべての値は Long() タイプです。

locks.<type>.acquireCount

指定したモードでロックが取得された回数。

locks.<type>.acquireWaitCount

locks.<type>.acquireCount ロックの取得が競合モードで保持されていたために待機した回数。

locks.<type>.timeAcquiringMicros

ロック取得の累積待機時間(マイクロ秒単位)。

locks.<type>.timeAcquiringMicroslocks.<type>.acquireWaitCount で割ると、特定のロック モードのおおよその平均待機時間が得られます。

locks.<type>.deadlockCount

ロック取得でデッドロックが発生した回数。

logicalSessionRecordCache : {
activeSessionsCount : <num>,
sessionsCollectionJobCount : <num>,
lastSessionsCollectionJobDurationMillis : <num>,
lastSessionsCollectionJobTimestamp : <Date>,
lastSessionsCollectionJobEntriesRefreshed : <num>,
lastSessionsCollectionJobEntriesEnded : <num>,
lastSessionsCollectionJobCursorsClosed : <num>,
transactionReaperJobCount : <num>,
lastTransactionReaperJobDurationMillis : <num>,
lastTransactionReaperJobTimestamp : <Date>,
lastTransactionReaperJobEntriesCleanedUp : <num>,
sessionCatalogSize : <num>
},
logicalSessionRecordCache

サーバー セッションのキャッシュに関するメトリクスを提供します。

logicalSessionRecordCache.activeSessionsCount

前回の更新期間以降に mongod または mongos インスタンスによってメモリにキャッシュされた、すべてのアクティブなローカル セッションの数。

Tip

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

logicalSessionRecordCache.sessionsCollectionJobCount

config.system.sessions コレクションで更新プロセスが実行された回数を追跡する数値。

Tip

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

logicalSessionRecordCache.lastSessionsCollectionJobDurationMillis

前回の更新の長さ(ミリ秒単位)。

logicalSessionRecordCache.lastSessionsCollectionJobTimestamp

前回の更新が発生した時刻。

logicalSessionRecordCache.lastSessionsCollectionJobEntriesRefreshed

前回の更新時に更新されたセッションの数。

logicalSessionRecordCache.lastSessionsCollectionJobEntriesEnded

前回の更新中に終了したセッションの数。

logicalSessionRecordCache.lastSessionsCollectionJobCursorsClosed

前回の config.system.sessions コレクションの更新中に閉じられたカーソルの数。

logicalSessionRecordCache.transactionReaperJobCount

config.transactions コレクションでトランザクション レコードのクリーンアップ プロセスが実行された回数を追跡する数。

logicalSessionRecordCache.lastTransactionReaperJobDurationMillis

前回のトランザクション レコードのクリーンアップの長さ(ミリ秒)。

logicalSessionRecordCache.lastTransactionReaperJobTimestamp

前回のトランザクション・レコードのクリーンアップの時刻。

logicalSessionRecordCache.lastTransactionReaperJobEntriesCleanedUp

前回のトランザクション レコードのクリーンアップ中に削除された config.transactions コレクション内のエントリの数。

logicalSessionRecordCache.sessionCatalogSize
mem : {
bits : <int>,
resident : <int>,
virtual : <int>,
supported : <boolean>
},
mem

mongod のシステム アーキテクチャと現在のメモリ使用量を報告するドキュメント。

mem.bits

MongoDB インスタンスが 64 ビット アーキテクチャ用にコンパイルされているか、32 ビット アーキテクチャ用にコンパイルされているかを示す数値(64 または 32)。

mem.resident

mem.resident の値は、データベース プロセスによって現在使用されている RAM の量とほぼ同等で、単位はメビバイト(MiB)です。通常の使用では、この値は大きくなる傾向があります。専用データベース サーバーでは、この数値はシステム メモリの合計量に近づく傾向があります。

mem.virtual

mem.virtual は、mongod プロセスによって使用される仮想メモリの量をメビバイト(MiB)の単位で表示します。

mem.supported

基礎となるシステムが拡張メモリ情報をサポートしているかどうかを示すブール値。この値が false で、システムが拡張メモリ情報をサポートしていない場合、他の mem 値はデータベース サーバーにアクセスできない可能性があります。

mem.note

mem.supported が false の場合は、mem.note フィールドが表示されます。

mem.note フィールドには、テキスト 'not all mem info support on this platform' が含まれています。

metrics : {
apiVersions: {
<appName1>: <string>,
<appName2>: <string>,
<appName3>: <string>
},
aggStageCounters : {
<aggregation stage> : Long("<num>")
},
changeStreams: {
largeEventsFailed: Long("<num>"),
largeEventsSplit: Long("<num>")
},
commands: {
<command>: {
failed: Long("<num>"),
validator: {
total: Long("<num>"),
failed: Long("<num>"),
jsonSchema: Long("<num>")
},
total: Long("<num>")
}
},
cursor : {
moreThanOneBatch : Long("<num>"),
timedOut : Long("<num>"),
totalOpened : Long("<num>"),
lifespan : {
greaterThanOrEqual10Minutes : Long("<num>"),
lessThan10Minutes : Long("<num>"),
lessThan15Seconds : Long("<num>"),
lessThan1Minute : Long("<num>"),
lessThan1Second : Long("<num>"),
lessThan30Seconds : Long("<num>"),
lessThan5Seconds : Long("<num>")
},
open : {
noTimeout : Long("<num>"),
pinned : Long("<num>"),
multiTarget : Long("<num>"),
singleTarget : Long("<num>"),
total : Long("<num>")
}
},
document : {
deleted : Long("<num>"),
inserted : Long("<num>"),
returned : Long("<num>"),
updated : Long("<num>")
},
dotsAndDollarsFields : {
inserts : Long("<num>"),
updates : Long("<num>")
},
getLastError : {
wtime : {
num : <num>,
totalMillis : <num>
},
wtimeouts : Long("<num>"),
default : {
unsatisfiable : Long("<num>"),
wtimeouts : Long("<num>")
}
},
mongos : {
cursor : {
moreThanOneBatch : Long("<num>"),
totalOpened : Long("<num>")
}
},
network : { // Added in MongoDB 6.3
totalEgressConnectionEstablishmentTimeMillis : Long("<num>"),
totalIngressTLSConnections : Long("<num>"),
totalIngressTLSHandshakeTimeMillis : Long("<num>"),
totalTimeForEgressConnectionAcquiredToWireMicros : Long("<num>"),
totalTimeToFirstNonAuthCommandMillis : Long("<num>")
},
operation : {
killedDueToClientDisconnect : Long("<num>"), // Added in MongoDB 7.1 (*Also available in 7.0.5*)
killedDueToMaxTimeMSExpired : Long("<num>"), // Added in MongoDB 7.2 (*Also available in 7.0.5*)
numConnectionNetworkTimeouts : Long("<num>"), // Added in MongoDB 6.3
totalTimeWaitingBeforeConnectionTimeoutMillis : Long("<num>"), // Added in MongoDB 6.3
scanAndOrder : Long("<num>"),
writeConflicts : Long("<num>")
},
operatorCounters : {
expressions : {
<command> : Long("<num>")
},
match : {
<command> : Long("<num>")
}
},
query: {
allowDiskUseFalse: Long("<num>"),
updateOneOpStyleBroadcastWithExactIDCount: Long("<num>"),
lookup: {
hashLookup: Long("<num>"),
hashLookupSpillToDisk: Long("<num>"),
indexedLoopJoin: Long("<num>"),
nestedLoopJoin: Long("<num>")
},
multiPlanner: {
classicCount: Long("<num>"),
classicMicros: Long("<num>"),
classicWorks: Long("<num>"),
sbeCount: Long("<num>"),
sbeMicros: Long("<num>"),
sbeNumReads: Long("<num>"),
histograms: {
classicMicros: [
{ lowerBound: Long("0"), count: Long("<num>") },
{ < Additional histogram groups not shown. > },
{ lowerBound: Long("1073741824"), count: Long("<num>")> }>
],
classicNumPlans: [
{ lowerBound: Long("0"), count: Long("<num>") },
{ < Additional histogram groups not shown. > },
{ lowerBound: Long("32"), count: Long("<num>") }
],
classicWorks: [
{ lowerBound: Long("0"), count: Long("<num>") },
{ < Additional histogram groups not shown. > },
{ lowerBound: Long("32768"), count: Long("<num>") }
],
sbeMicros: [
{ lowerBound: Long("0"), count: Long("<num>") },
{ < Additional histogram groups not shown. > },
{ lowerBound: Long("1073741824"), count: Long("<num>") }
],
sbeNumPlans: [
{ lowerBound: Long("0"), count: Long("<num>") },
{ < Additional histogram groups not shown. > },
{ lowerBound: Long("32"), count: Long("<num>") }
],
sbeNumReads: [
{ lowerBound: Long("0"), count: Long("<num>") },
{ < Additional histogram groups not shown. > },
{ lowerBound: Long("32768"), count: Long("<num>") }
]
}
},
planCache: {
classic: { hits: Long("<num>"), misses: Long("<num>") },
sbe: { hits: Long("<num>"), misses: Long("<num>") }
},
queryFramework: {
aggregate: {
classicHybrid: Long("<num>"),
classicOnly: Long("<num>"),
cqf: Long("<num>"),
sbeHybrid: Long("<num>"),
sbeOnly: Long("<num>")
},
find: { classic: Long("<num>"), cqf: Long("<num>"), sbe: Long("<num>") }
}
},
queryExecutor: {
scanned : Long("<num>"),
scannedObjects : Long("<num>"),
collectionScans : {
nonTailable : Long("<num>"),
total : Long("<num>")
}
},
record : {
moves : Long("<num>")
},
repl : {
executor : {
pool : {
inProgressCount : <num>
},
queues : {
networkInProgress : <num>,
sleepers : <num>
},
unsignaledEvents : <num>,
shuttingDown : <boolean>,
networkInterface : <string>
},
apply : {
attemptsToBecomeSecondary : Long("<num>"),
batches : {
num : <num>,
totalMillis : <num>
},
ops : Long("<num>")
},
buffer : {
count : Long("<num>"),
maxSizeBytes : Long("<num>"),
sizeBytes : Long("<num>")
},
initialSync : {
completed : Long("<num>"),
failedAttempts : Long("<num>"),
failures : Long("<num>")
},
network : {
bytes : Long("<num>"),
getmores : {
num : <num>,
totalMillis : <num>
},
notPrimaryLegacyUnacknowledgedWrites : Long("<num>"),
notPrimaryUnacknowledgedWrites : Long("<num>"),
oplogGetMoresProcessed : {
num : <num>,
totalMillis : <num>
},
ops : Long("<num>"),
readersCreated : Long("<num>"),
replSetUpdatePosition : {
num : Long("<num>")
}
},
reconfig : {
numAutoReconfigsForRemovalOfNewlyAddedFields : Long("<num>")
},
stateTransition : {
lastStateTransition : <string>,
userOperationsKilled : Long("<num>"),
userOperationsRunning : Long("<num>")
},
syncSource : {
numSelections : Long("<num>"),
numTimesChoseSame : Long("<num>"),
numTimesChoseDifferent : Long("<num>"),
numTimesCouldNotFind : Long("<num>")
},
waiters : {
opTime : Long("<num>"),
replication : Long("<num>")
}
},
storage : {
freelist : {
search : {
bucketExhausted : <num>,
requests : <num>,
scanned : <num>
}
}
},
ttl : {
deletedDocuments : Long("<num>"),
passes : Long("<num>"),
subPasses : Long("<num>")
}
}
metrics

実行中の mongod インスタンスの現在の使用状況と状態を反映するさまざまな統計を返すドキュメント。

metrics.aggStageCounters

集計パイプライン ステージの使用について報告するドキュメント。metrics.aggStageCounters のフィールドは、集計パイプライン ステージの名前です。serverStatus は、各パイプライン ステージごとに、そのステージが実行された回数を報告します。

バージョン 5.2(および 5.0.6)でアップデートされました。

metrics.apiVersions

ドキュメントには、次の内容が含まれます。

  • 各クライアント・アプリケーションの名前

  • 各アプリケーションが過去 24 時間以内に設定された Stable API バージョン

metrics.apiVersions を表示するときは、次の点を考慮します。

  • appname に対して可能性のある戻り値は以下の通りです。

    • default: Stable API バージョンを指定せずにコマンドが発行されました。

    • 1: コマンドは Stable API バージョン 1 で発行されました。

    注意

    コマンド レベルで Stable API バージョンを指定できるため、appname の両方の戻り値が表示される場合があります。コマンドの中には、Stable API バージョンなしで発行されたコマンドもあれば、バージョン 1 で発行されたコマンドもあります。

  • API バージョンのメトリクスは 24 時間保持されます。過去 24 時間以内にアプリケーションから特定の API バージョンでコマンドが発行されなかった場合、その appname と API バージョンはメトリクスから削除されます。これは、default API バージョン メトリクスにも適用されます。

  • 接続 URI で appname を指定して MongoDB インスタンスに接続するときに、appname を設定します。?appName=ZZZ は、appnameZZZZ に設定します。

  • Stable API にアクセスするドライバーは、デフォルトの appname を設定できます。

  • appname が設定されていない場合は、製品に基づいてデフォルト値が自動的に入力されます。たとえば、URI に appname がない MongoDB Compass 接続の場合、メトリクスは 'MongoDB Compass': [ 'default' ] を返します。

バージョン 5.0 の新機能。

metrics.operatorCounters

集計パイプラインの演算子と式の使用について報告するドキュメント。

metrics.operatorCounters.expressions

式演算子の実行頻度を示す番号付きのドキュメント。

大なり演算子($gt)などの特定の演算子のメトリクスを取得するには、その特定の演算子をコマンドに追加します。

db.runCommand( { serverStatus: 1 } ).metrics.operatorCounters.expressions.$gt

バージョン 5.0 で追加

metrics.operatorCounters.match

マッチ式が実行された頻度を示す番号付きのドキュメント。

マッチ式演算子も、集計パイプライン $match ステージの一部として増分されます。$match ステージで $expr 演算子が使用される場合、$expr のカウンターは増加しますが、コンポーネント カウンターは増加しません。

次のクエリを考えてみましょう。

db.matchCount.aggregate(
[
{ $match:
{ $expr: { $gt: [ "$_id", 0 ] } }
}
]
)

$expr のカウンターは、クエリが実行されると増分されます。$gt のカウンターはありません。

metrics.changeStreams

16 MB を超える変更ストリーム イベントに関する情報を報告するドキュメント。

バージョン 7.0 で追加

metrics.changeStreams.largeEventsFailed

イベントが 16 MB より大きいことが原因で BSONObjectTooLarge の例外を引き起こした変更ストリーム イベントの数。例外を防ぐには、$changeStreamSplitLargeEvent を参照してください。

バージョン 7.0 の新機能:(6.0.9および 5.0.19でも利用可能

metrics.changeStreams.largeEventsSplit

小さなフラグメントに分割された、16 MB を超える変更ストリーム イベントの数。イベントは、$changeStreamSplitLargeEvent パイプライン ステージを使用する場合にのみ分裂されます。

バージョン 7.0 の新機能:(6.0.9 でも利用可能

metrics.commands

データベースコマンドの使用について報告するドキュメント。metrics.commands のフィールドは、データベースコマンドの名前です。serverStatus は、各コマンドごとに、実行の合計回数と失敗した実行回数を報告します。

metrics.commands には、全体の replSetStepDown だけでなく、replSetStepDownWithForce(つまり force: true を含む replSetStepDown コマンド)も含まれます。以前のバージョンでは、コマンドは全体的な replSetStepDown メトリクスのみを報告していました。

metrics.commands.<command>.failed

この mongod<command> が失敗した回数。

metrics.commands.<create or collMod>.validator

create コマンドと collMod コマンドの場合は、コレクションの検証ルールまたは式を指定するためにコマンドに渡され、空でない validator オブジェクトについて報告するドキュメント。

metrics.commands.<create or collMod>.validator.total

空でない validator オブジェクトがこの mongod のコマンドにオプションとして渡された回数。

metrics.commands.<create or collMod>.validator.failed

空でない validator オブジェクトを持つこの mongod のコマンドに対する呼び出しが、スキーマ検証エラーによって失敗した回数。

metrics.commands.<create or collMod>.validator.jsonSchema

$jsonSchema を持つ validator オブジェクトがこの mongod のコマンドにオプションとして渡された回数。

metrics.commands.<command>.total

この mongod<command> が実行された回数。

metrics.commands.update.pipeline

この mongod のドキュメントを更新するために集計パイプラインが使用された回数。更新の総数からこの値を引くと、ドキュメントの構文で行われた更新の数を得られます。

pipeline カウンターは、updatefindAndModify の操作でのみ使用可能です。

metrics.commands.findAndModify.pipeline

この mongod のドキュメントをアップデートするために集計パイプラインfindAndModify() が使用された回数。

pipeline カウンターは、updatefindAndModify の操作でのみ使用可能です。

metrics.commands.update.arrayFilters

この mongod のドキュメントをアップデートするために、arrayFilter が使用された回数。

arrayFilters カウンターは、updatefindAndModify の操作でのみ使用可能です。

metrics.commands.findAndModify.arrayFilters

この mongod のドキュメントを更新するために、findAndModify()arrayFilterが使用された回数。

arrayFilters カウンターは、updatefindAndModify の操作でのみ使用可能です。

metrics.document

ドキュメントのアクセスと変更のパターンを反映するドキュメント。これらの値を、操作の合計数を追跡する opcounters ドキュメントのデータと比較します。

metrics.document.deleted

削除されたドキュメントの合計数。

metrics.document.inserted

挿入されたドキュメントの合計数。

metrics.document.returned

クエリによって返されたドキュメントの合計数。

metrics.document.updated

アップデート操作に一致したドキュメントの合計数。この値は、アップデートによって変更されたドキュメントの数と必ずしも同じではありません。

metrics.dotsAndDollarsFields

ドル($)のプレフィックスが付いた名前を使用して、挿入またはアップデート操作が実行された頻度を示す数値を含むドキュメント。この値は、操作の正確な数を報告するものではありません。

アップサート操作によって新しいドキュメントが作成される場合、そのドキュメントは update ではなく insert と見なされます。

バージョン 5.0 で追加

metrics.executor

レプリケーション エグゼキュータのさまざまな統計を報告するドキュメント。

metrics.getLastError

書込み保証(write concern)の使用について報告するドキュメント。

metrics.getLastError.wtime

w の引数が 1 より大きい書込み保証(write concern)操作の回数を報告するドキュメント。

metrics.getLastError.wtime.num

指定された書込み保証(write concern)操作の合計数(つまり、w)は、レプリカセットの 1 つまたは複数のノードが書込み(write)操作を確認するまで待機します(たとえば、w の値が 1 より大きい場合)。

metrics.getLastError.wtime.totalMillis

mongod が書込み保証(write concern)を使用して書込み保証(write concern)操作の実行に費やした合計時間(ミリ秒単位)(つまり、w)は、レプリカセットの 1 つまたは複数のノードが書込み(write)操作(たとえば、1 より大きいw 値)を確認するのを待機します。

metrics.getLastError.wtimeouts

wtimeout しきい値の結果、書込み保証(write concern)操作がタイムアウトした回数。この数値は、デフォルトおよびデフォルト以外の書込み保証(write concern)の指定において、両方で増加します。

metrics.getLastError.default

デフォルトの書込み保証(write concern)がいつ使用されたかを報告するドキュメント(つまり clientSupplied 以外の書込み保証(write concern))。デフォルトの書込み保証(write concern)の原因として考えられるものは次のとおりです。

  • implicitDefault

  • customDefault

  • getLastErrorDefaults

それぞれの書込み保証(write concern)の原因、または provenance に関する情報については、次の表を参照します。

出所
説明
clientSupplied
書き込み保証(write concern)がアプリケーションで指定されました。
customDefault
書込み保証 (write concern) は、カスタム定義されたデフォルト値に基づきます。setDefaultRWConcern を参照してください。
getLastErrorDefaults
書込み保証 (write concern) は、レプリカセットの settings.getLastErrorDefaults のフィールドに基づきます。
implicitDefault
他の書き込み保証(write concern)が一切指定されていない状態で、サーバーから発生した書き込み保証。
metrics.getLastError.default.unsatisfiable

clientSupplied 以外の書込み保証(write concern)が UnsatisfiableWriteConcern エラー コードを返した回数。

metrics.getLastError.default.wtimeouts

clientSupplied 以外の書込み保証(write concern)がタイムアウトした回数。

metrics.mongos

mongos に関するメトリクスを含むドキュメント。

metrics.mongos.cursor

mongos で使用されるカーソルのメトリクスを含むドキュメント。

metrics.mongos.cursor.moreThanOneBatch

mongos が開始されてから、複数のバッチを返したカーソルの合計数。追加のバッチは、getMore コマンドを使用して取得されます。

バージョン 5.0 で追加

metrics.mongos.cursor.totalOpened

現在開いているカーソルを含む、mongos の開始以降に開かれたカーソルの合計数。現在開いているカーソルの数のみを示す metrics.cursor.open.total とは異なります。

バージョン 5.0 で追加

metrics.network

バージョン 6.3 で追加

サーバー ネットワーク メトリクスを報告するドキュメント。

metrics.network.totalEgressConnectionEstablishmentTimeMillis

バージョン 6.3 で追加

サーバー接続を確立するための合計時間(ミリ秒単位)。

metrics.network.totalIngressTLSConnections

バージョン 6.3 で追加

TLS を使用するサーバーへの着信接続の合計数。この数値は累計であり、サーバー起動後の合計です。

metrics.network.totalIngressTLSHandshakeTimeMillis

バージョン 6.3 で追加

TLS ネットワーク ハンドシェイクが完了するまで、サーバーへの着信接続が待機しなければならない合計時間(ミリ秒)です。この数値は累計であり、サーバー開始後の合計です。

metrics.network.totalTimeForEgressConnectionAcquiredToWireMicros

バージョン 6.3 で追加

サーバー接続の取得から、ネットワーク経由でサーバーに送信するバイトが書き込まれるの間に操作が待機する合計時間(マイクロ秒単位)。この数値は累計であり、サーバー開始後の合計です。

metrics.network.totalTimeToFirstNonAuthCommandMillis

バージョン 6.3 で追加

サーバーへの着信接続を受け付けてから、接続認証ハンドシェイク以外の最初の操作を受信するまでの合計時間(ミリ秒単位)。この数値は累計であり、サーバー開始後の合計です。

metrics.operation

MongoDB が特別な操作タイプを使用して取り扱ういくつかのタイプのアップデートとクエリ操作のカウンターを保持するドキュメント。

metrics.operation.killedDueToClientDisconnect

バージョン 7.1 の新機能: (7.0.5 でも利用可能

クライアントの接続が切断されたため、完了前にキャンセルされた操作の合計数。

metrics.operation.killedDueToMaxTimeMSExpired

バージョン 7.2 の新機能7.0.5 でも利用可能

完了前にタイムアウトした操作の合計数。

metrics.operation.numConnectionNetworkTimeouts

バージョン 6.3 で追加

サーバー接続取得のタイムアウト エラーが原因で失敗した操作の総数。

metrics.operation.totalTimeWaitingBeforeConnectionTimeoutMillis

バージョン 6.3 で追加

サーバー接続取得のタイムアウト エラーが発生し、操作が失敗するまでに待機した合計時間(ミリ秒)。

metrics.operation.scanAndOrder

インデックスを使用してソート操作を実行できない、ソートされた数値を返すクエリの合計数。

metrics.operation.writeConflicts

書込み競合(write conflict)が発生したクエリの合計数。

metrics.query.lookup

スロットベースのクエリ実行エンジンを使用した $lookup ステージの使用に関する詳細なデータを提供するドキュメント。詳しくは、「$lookup の最適化」を参照してください。

これらのメトリクスは主に MongoDB による内部使用を目的としています。

バージョン 6.1 で追加

metrics.query.multiPlanner

スロットベースのクエリ実行エンジンとクラシック クエリ エンジンの詳細なクエリ プラン データを提供します。スロットベースのクエリ実行エンジンの詳細については、「スロットベースのクエリ実行エンジンのパイプライン最適化」を参照してください。

これらのメトリクスは主に MongoDB による内部使用を目的としています。

バージョン 6.0.0 および 5.0.9 の新機能

metrics.query.sort

ソート ステージに関連するカウンターを保持するドキュメント。

バージョン 6.2 の新機能

metrics.query.sort.spillToDisk

ソート ステージによるディスクへの書込み(write)の総数。

バージョン 6.2 の新機能

metrics.query.sort.totalBytesSorted

ソートされたデータの合計量(バイト単位)。

バージョン 6.2 の新機能

metrics.query.sort.totalKeysSorted

ソートに使用されるキーの合計数。

バージョン 6.2 の新機能

query.multiPlanner.classicMicros

クラシック マルチプランナーで費やされたマイクロ秒の合計数を集計します。

query.multiPlanner.classicWorks

クラシック マルチプランナーで実行された "作業" の総数を集計します。

query.multiPlanner.classicCount

クラシック マルチプランナーの呼び出しの総数を集計します。

query.multiPlanner.sbeMicros

スロットベースの実行エンジン マルチプランナーで費やされたマイクロ秒の総数を集計します。

query.multiPlanner.sbeNumReads

スロットベースの実行エンジン マルチプランナーで実行された読み取りの合計数を集計します。

query.multiPlanner.sbeCount

スロットベースの実行エンジン マルチプランナーで呼び出された合計数を集計します。

query.multiPlanner.histograms.classicMicros

クラシック マルチプランナーの呼び出しに費やされたマイクロ秒数を測定するヒストグラム。

query.multiPlanner.histograms.classicWorks

クラシック マルチプランナーの呼び出し中に実行された "作業" の数を測定するヒストグラム。

query.multiPlanner.histograms.classicNumPlans

クラシック マルチプランナーの呼び出し中に、候補セット内のプランの数を測定するヒストグラム。

query.multiPlanner.histograms.sbeMicros

スロットベースの実行エンジン マルチプランナーの呼び出しにかかったマイクロ秒数を測定するヒストグラム。

query.multiPlanner.histograms.sbeNumReads

スロットベースの実行エンジン マルチプランナーの呼び出し中に行われた読み取り回数を測定するヒストグラム。

query.multiPlanner.histograms.sbeNumPlans

スロットベースの実行エンジン マルチプランナーの呼び出し中に、候補セット内のプランの数を測定するヒストグラム。

query.queryFramework.aggregate

クエリフレームワークで実行された集計操作の数を報告するドキュメント。query.queryFramework.aggregateのサブフィールドは、各フレームワークが集計操作の実行に使用された回数を示します。

query.queryFramework.find

クエリフレームワークで実行された検索操作の数を報告するドキュメント。query.queryFramework.find のサブフィールドは、各フレームワークが検索操作を実行するために使用された回数を示します。

metrics.queryExecutor

クエリ実行システムからのデータを報告するドキュメント。

metrics.queryExecutor.scanned

クエリおよびクエリプランの評価中にスキャンされたインデックスアイテムの合計数。このカウンターは explain() の出力の totalKeysExamined と同じです。

metrics.queryExecutor.scannedObjects

クエリおよびクエリプランの評価中にスキャンされたドキュメントの合計数。このカウンターは explain() の出力の totalDocsExamined と同じです。

metrics.queryExecutor.collectionScans

コレクションスキャンを実行したクエリの数を報告するドキュメント。

metrics.queryExecutor.collectionScans.nonTailable

追尾可能 (tailable) カーソルを使用しなかったコレクションスキャンを実行したクエリの数。

metrics.queryExecutor.collectionScans.total

コレクションスキャンを実行したクエリの総数。合計は、追尾可能 (tailable) カーソルを使用したクエリと使用しなかったクエリで構成されています。

metrics.record

ディスク上のメモリ ファイル内のレコード割り当てに関連するデータを報告するドキュメント。

metrics.repl

レプリケーション プロセスに関連するメトリクスを報告するドキュメント。metrics.repl ドキュメントは、レプリカセットのノードではないインスタンスも含め、すべての mongod インスタンスに表示されます。

metrics.repl.apply

レプリケーション oplog からの操作の適用について報告するドキュメント。

metrics.repl.apply.batchSize

適用された oplog 操作の合計数。metrics.repl.apply.batchSize は、各操作の後に 1 つずつ増加するのではなく、バッチ境界でバッチ内の操作の数に応じて増加します。

より詳細な情報については、「metrics.repl.apply.ops」を参照してください。

metrics.repl.apply.batches

metrics.repl.apply.batches は、レプリカセットのセカンダリ ノード上の oplog アプリケーション プロセスを報告します。oplog アプリケーション プロセスの詳細については、「マルチスレッド レプリケーション」を参照してください。

metrics.repl.apply.batches.num

すべてのデータベースに適用されたバッチの合計数。

metrics.repl.apply.batches.totalMillis

mongod が oplog から操作を適用するのに費やした合計時間(ミリ秒単位)。

metrics.repl.apply.ops

適用された oplog 操作の合計数。metrics.repl.apply.ops は、各操作の後に増加します。

Tip

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

metrics.repl.buffer

MongoDB は、バッチで oplog エントリを適用する前に、レプリケーション同期ソース バッファから oplog 操作をバッファします。metrics.repl.buffer は、oplog バッファを追跡する方法を提供します。oplog アプリケーション プロセスの詳細については、「マルチスレッド レプリケーション」を参照してください。

metrics.repl.buffer.count

oplog バッファ内の現在の操作数。

metrics.repl.buffer.maxSizeBytes

バッファの最大サイズ。この値は mongod 内の定数設定であり、構成できません。

metrics.repl.buffer.sizeBytes

oplog バッファの内容の現在のサイズ。

metrics.repl.network

metrics.repl.network レプリケーション プロセスによるネットワークの使用を報告します。

metrics.repl.network.bytes

metrics.repl.network.bytes レプリケーション同期ソースから読み取られたデータの総量を報告します。

metrics.repl.network.getmores

metrics.repl.network.getmores は、oplog レプリケーション プロセスの一部として oplog カーソルから追加の結果を要求する getmore 操作について報告します。

metrics.repl.network.getmores.num

metrics.repl.network.getmores.num では、レプリケーション同期ソースから追加の操作セットをリクエストする操作である getmore 操作の合計数が報告されます。

metrics.repl.network.getmores.totalMillis

metrics.repl.network.getmores.totalMillis は、getmore 操作からデータを収集するのに必要な合計時間を報告します。

注意

getmore 操作が最初にデータを返さない場合でも MongoDB はさらに多くのデータを待機するため、この数値はかなり大きくなる可能性があります。

metrics.repl.network.getmores.numEmptyBatches

セカンダリが同期元から受け取る、空のoplog バッチの数。セカンダリは、ソースと完全に同期されており、次のいずれかの場合に空のバッチを受け取ります。

  • getmore が追加のデータを待機中にタイムアウトした場合、または

  • 同期ソースのマジョリティ コミット ポイントは、このセカンダリに最後にバッチが送信された以降に進んでいます。

プライマリの場合で、インスタンスが以前はセカンダリだった場合、セカンダリであったときに受信した空のバッチの数が報告されます。それ以外の場合で、プライマリの場合、この数値は 0 になります。

metrics.repl.network.notPrimaryLegacyUnacknowledgedWrites

現在の mongodPRIMARY の状態でないために失敗した、確認応答されていない(w: 0)レガシー書込み (write)操作(オペコード を参照)の数。

metrics.repl.network.notPrimaryUnacknowledgedWrites

現在の mongodPRIMARY 状態でないために失敗した、確認応答されていない(w: 0)書込み(write)操作の数。

metrics.repl.network.oplogGetMoresProcessed

ノードが同期ソースとして処理した oplog を取得するための getMore コマンドの数を報告するドキュメント。

metrics.repl.network.oplogGetMoresProcessed.num

ノードが同期ソースとして処理した oplog を取得するための getMore コマンドの数。

metrics.repl.network.oplogGetMoresProcessed.totalMillis

metrics.repl.network.oplogGetMoresProcessed.num でカウントされた、getMore コマンドの処理にノードが費やした時間(ミリ秒単位)。

metrics.repl.network.ops

レプリケーション・ソースから読み取られた操作の総数。

metrics.repl.network.readersCreated

作成された oplog クエリ プロセスの合計数。MongoDB では、タイムアウトやネットワーク操作など、接続でエラーが発生するたびに新しい oplog クエリが作成されます。さらに、MongoDB でレプリケーションの新しいソースが選択されるたびに metrics.repl.network.readersCreated が増加します。

metrics.repl.network.replSetUpdatePosition

ノードが同期ソースに送信した replSetUpdatePosition コマンドの数を報告するドキュメント。

metrics.repl.network.replSetUpdatePosition.num

ノードが同期ソースに送信した replSetUpdatePosition コマンドの数。replSetUpdatePosition コマンドは、ノードから同期ソースにレプリケーションの進行状況を伝える内部レプリケーション コマンドです。

注意

STARTUP2 状態のレプリカセット ノードは、同期ソースに replSetUpdatePosition コマンドを送信しません。

metrics.repl.reconfig

ノード newlyAdded フィールドがプライマリによって自動的に削除された回数を含むドキュメント。ノードがレプリカセットに初めて追加されると、ノードの newlyAdded フィールドは true に設定されます。

バージョン 5.0 で追加

metrics.repl.reconfig.numAutoReconfigsForRemovalOfNewlyAddedFields

newlyAdded ノード フィールドがプライマリによって自動的に削除された回数です。ノードがレプリカセットに初めて追加されると、ノードの newlyAdded フィールドは true に設定されます。プライマリは、ノードの状態が SECONDARYRECOVERING、または ROLLBACK であることを示すノードのハートビート応答を受信すると、ノードの newlyAdded フィールドを自動的に削除します。newlyAdded フィールドは local.system.replset コレクションに保存されます。

バージョン 5.0 で追加

metrics.repl.stateTransition

以下のいずれかのトランザクションをノードが実行するとユーザー操作が中断される可能性があり、その場合のユーザー操作に関する情報は次のとおりです。

  • ノードがプライマリに昇格するトランザクション。

  • ノードがセカンダリに降格するトランザクション。

  • ノードがロールバックを実行しているトランザクション。

metrics.repl.stateTransition.lastStateTransition

以下のトランザクションが報告されています。

状態の変更
説明
"stepUp"
ノードがプライマリに昇格するトランザクション。
"stepDown"
ノードがセカンダリに降格するトランザクション。
"rollback"
ノードがロールバックを実行しているトランザクション。
""
ノードの状態は変更されていません。
metrics.repl.stateTransition.userOperationsKilled

mongod インスタンスの状態変更中に停止された操作の数。

注意

このメトリクスは、操作がユーザーまたはサーバーによって開始されたかどうかにかかわらず、強制終了された操作の総数を反映しています。

metrics.repl.stateTransition.userOperationsRunning

mongod インスタンスの状態変更中に実行中のままだった操作の数。

注意

このメトリクスは、操作がユーザーまたはサーバーによって開始されたかどうかにかかわらず、実行中の操作の総数を反映しています。

metrics.repl.syncSource

レプリカセット ノードの同期ソースの選択プロセスに関する情報です。

metrics.repl.syncSource.numSelections

利用可能な同期ソース オプションの中から、同期するノードを選択しようとした回数です。たとえば、同期ソースが再評価されたり、ノードが現在の同期ソースからエラーを受け取ったりすると、ノードは同期元のノードを選択しようとします。

metrics.repl.syncSource.numTimesChoseSame

現在の同期ソースが最適か再評価した後、ノードが元の同期ソースを維持した回数です。

metrics.repl.syncSource.numTimesChoseDifferent

現在の同期ソースが最適か再評価した後、ノードが新しい同期ソースを選択した回数です。

metrics.repl.syncSource.numTimesCouldNotFind

同期元のノードを選択しようとした際、ノードが利用可能な同期ソースを見つけられなかった回数です。

metrics.repl.waiters.replication

書き込み確認(書き込み保証)の確認応答の複製またはジャーナル処理を待っているスレッドの数。

バージョン 7.0.10 の新機能: (6.0.16 および 5.0.27 でも利用可能)

metrics.repl.waiters.opTime

ローカルレプリケーションの optime 割り当てのためにキューに入れられたスレッドの数。

バージョン 7.0.10 の新機能: (6.0.16 および 5.0.27 でも利用可能)

metrics.storage.freelist.search.bucketExhausted

mongod がフリー リストを確認したが、大規模なレコード割り当てが見つからなかった回数です。

metrics.storage.freelist.search.requests

mongod が利用可能なレコード割り当てを検索した回数です。

metrics.storage.freelist.search.scanned

mongod が検索した使用可能なレコード割り当ての数です。

metrics.ttl

TTL インデックス プロセスのリソース使用の操作について報告するドキュメントです。

metrics.ttl.deletedDocuments

TTL インデックスを持つコレクションから削除されたドキュメントの合計数です。

metrics.ttl.passes

期限切れのドキュメントをチェックするために TTL バックグラウンド プロセスによって実行されるパスの数。 TTL モニターがすべての TTL インデックスから見つけられる数の候補ドキュメントを削除すると、パスは完了します。 TTL インデックスの削除プロセスの詳細については、「削除プロセス 」を参照してください。

metrics.ttl.subPasses

期限切れのドキュメントをチェックするために TTL バックグラウンド プロセスによって実行されるサブパスの数。 TTL インデックスの削除プロセスの詳細については、「削除プロセス 」を参照してください。

metrics.cursor

カーソルの状態とカーソルの使用に関するデータを含むドキュメントです。

metrics.cursor.moreThanOneBatch

サーバー プロセスの開始以降に複数のバッチを返したカーソルの合計数です。追加のバッチは、getMore コマンドを使用して取得されます。

バージョン 5.0 で追加

metrics.cursor.timedOut

サーバー プロセスの開始以降にタイムアウトしたカーソルの合計数です。この数値が大きい場合、または一定の割合で増加している場合、アプリケーション エラーが発生している可能性があります。

metrics.cursor.totalOpened

現在開いているカーソルを含む、サーバー プロセスの開始以降に開かれたカーソルの合計数。現在開いているカーソルの数のみを示す metrics.cursor.open.total とは異なります。

バージョン 5.0 で追加

metrics.cursor.lifespan

指定された期間中、有効期限内のカーソルの数を報告するドキュメントです。カーソルの有効期限は、カーソルが作成されてから、 killCursors コマンドによってカーソルが強制終了されるか、カーソルのバッチ内にオブジェクトが残っていない状態になるまでの時間です。

有効期限は次のとおりです。

  • 1 秒未満

  • 1 秒以上 5 秒未満

  • 5 秒以上 15 秒未満

  • 15 秒以上 30 秒未満

  • 30 秒以上 1 分未満

  • 1 分以上 10 分未満

  • 10 分以上

バージョン 5.0 で追加

metrics.cursor.lifespan.greaterThanOrEqual10Minutes

有効期限が 10 分以上のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.lifespan.lessThan10Minutes

有効期限が 1 分以上 10 分未満のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.lifespan.lessThan15Seconds

有効期限が 5 秒以上 15 秒未満のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.lifespan.lessThan1Minute

有効期限が 30 秒以上 1 分未満のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.lifespan.lessThan1Second

有効期限が 1 秒未満のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.lifespan.lessThan30Seconds

有効期限が 15 秒以上 30 秒未満のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.lifespan.lessThan5Seconds

有効期限が 1 秒以上 5秒未満のカーソルの数です。

バージョン 5.0 で追加

metrics.cursor.open

オープン カーソルに関するデータを含むドキュメントです。

metrics.cursor.open.noTimeout

非アクティブな期間が一定期間続いてもタイムアウトをしないよう DBQuery.Option.noTimeout オプションで設定されたオープン カーソルの数です。

metrics.cursor.open.pinned

「ピン留めされた」オープン カーソルの数です。

metrics.cursor.open.total

MongoDB がクライアント用に保持しているカーソルの数です。MongoDB は未使用のカーソルを使い切るため、通常この値は小さい値またはゼロになります。ただし、キューや古くなった追尾可能 (tailable) カーソル、あるいは多数の操作がある場合、この値が増加することがあります。

metrics.cursor.open.singleTarget

単一のシャードのみを対象とするカーソルの総数。mongos インスタンスのみが metrics.cursor.open.singleTarget 値を報告します。

metrics.cursor.open.multiTarget

複数のシャードのみを対象とするカーソルの総数。mongos インスタンスのみが metrics.cursor.open.multiTarget 値を報告します。

mongod でのみ利用可能です。

"mirroredReads" : {
"seen" : <num>,
"sent" : <num>
},
mirroredReads

mongod でのみ利用可能です。

ミラーリングされた読み取りについて報告するドキュメント。mirroredReads 情報を返すには、包含を明示的に指定する必要があります。

db.runCommand( { serverStatus: 1, mirroredReads: 1 } )
mirroredReads.processedAsSecondary

バージョン 6.2 の新機能

セカンダリ時にノードによって処理されたミラーリングされた読み取りの数です。

Tip

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

mirrorReads Parameter

mirroredReads.seen

ノードが受信したミラーリングをサポートする操作の数です。

Tip

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

mirrorReads Parameter

mirroredReads.sent

プライマリ時にノードによって送信されたミラーリングされた読み取りの数です。たとえば、ある読み取りがミラーリングされて 2 つのセカンダリに送信された場合、ミラーリングされた読み取りの数は 2 になります。

Tip

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

mirrorReads Parameter

network : {
bytesIn : Long("<num>"),
bytesOut : Long("<num>"),
physicalBytesIn : Long("<num>"),
physicalBytesOut : Long("<num>"),
numSlowDNSOperations : Long("<num>"),
numSlowSSLOperations : Long("<num>"),
numRequests : Long("<num>"),
tcpFastOpen : {
kernelSetting : Long("<num>"),
serverSupported : <bool>,
clientSupported : <bool>,
accepted : Long("<num>")
},
compression : {
snappy : {
compressor : { bytesIn : Long("<num>"), bytesOut : Long("<num>") },
decompressor : { bytesIn : Long("<num>"), bytesOut : Long("<num>") }
},
zstd : {
compressor : { bytesIn : Long("<num>"), bytesOut : Long("<num>") },
decompressor : { bytesIn : Long("<num>"), bytesOut : Long("<num>") }
},
zlib : {
compressor : { bytesIn : Long("<num>"), bytesOut : Long("<num>") },
decompressor : { bytesIn : Long("<num>"), bytesOut : Long("<num>") }
}
},
serviceExecutors : {
passthrough : {
threadsRunning : <num>,
clientsInTotal : <num>,
clientsRunning : <num>,
clientsWaitingForData : <num>
},
fixed : {
threadsRunning : <num>,
clientsInTotal : <num>,
clientsRunning : <num>,
clientsWaitingForData : <num>
}
},
listenerProcessingTime : { durationMicros : <num> } // Added in MongoDB 6.3
}
network

MongoDB のネットワーク使用に関するデータを報告するドキュメントです。これらの統計は、Ingress 接続 のみを測定します。具体的には、クライアントまたは他の mongodmongos のインスタンスによって開始されたネットワーク接続を介して mongod または mongos が認識したトラフィックです。この mongod または mongos インスタンスによって開始されたネットワーク接続からのトラフィック(具体的には Egress 接続)は、これらの統計では測定されません

network.bytesIn

クライアントまたは他の mongodmongos インスタンスによって開始されたネットワーク接続を介してサーバーが受信した論理バイトの合計数です。論理バイトは特定のファイルに含まれる正確なバイト数です。

network.bytesOut

クライアントまたは他の mongodmongos インスタンスによって開始されたネットワーク接続を介してサーバーが送信した論理バイトの合計数です。論理バイトは特定のファイルに含まれるバイト数に相当します。

network.physicalBytesIn

クライアントまたは他のmongodmongos インスタンスによって開始されたネットワーク接続を介してサーバーが受信した物理バイトの合計数です。物理バイトはディスク上に実際に存在するバイト数です。

network.physicalBytesOut

クライアントまたは他のmongodmongos インスタンスによって開始されたネットワーク接続を介してサーバーが送信した物理バイトの合計数です。物理バイトはディスク上に実際に存在するバイト数です。

network.numSlowDNSOperations

1 秒以上かかった DNS 解決操作の合計数です。

network.numSlowSSLOperations

1 秒以上かかった SSL ハンドシェイク操作の合計数です。

network.numRequests

サーバーが受信した個別のリクエストの合計数。この値を使用して、network.bytesIn 値と network.bytesOut 値のコンテキストを提供し、MongoDB のネットワーク利用がアプリケーションの使用と期待とに合致していることを確認します。

network.tcpFastOpen

MongoDB のサポートと TCP Fast Open(TFO)接続の使用に関するデータを報告するドキュメントです。

network.tcpFastOpen.kernelSetting

Linux のみ

/proc/sys/net/ipv4/tcp_fastopenの値を返します。

  • 0 - システム上で TCP Fast Open が無効になっています。

  • 1 - 送信接続に対して TCP Fast Open が有効になっています。

  • 2 - 着信接続に対して TCP Fast Open が有効になっています。

  • 3 - 着信接続と発信接続で TCP Fast Open が有効になっています。

network.tcpFastOpen.serverSupported
  • ホスト オペレーティング システムがインバウンド TCP Fast Open (TFO)接続をサポートしている場合、true を返します。

  • ホスト オペレーティング システムがインバウンド TCP Fast Open(TFO)接続をサポートしていない場合、 false を返します。

network.tcpFastOpen.clientSupported
  • ホスト オペレーティング システムがアウトバウンド TCP Fast Open(TFO)接続をサポートしている場合、true を返します。

  • ホスト オペレーティング システムがアウトバウンド TCP Fast Open(TFO)接続をサポートしていない場合、false を返します。

network.tcpFastOpen.accepted

mongod または mongos が最後に起動してから mongod または mongos が受け入れた着信 TCP Fast Ope(TFO)接続の合計数です。

network.compression

各ネットワーク コンプレッサー ライブラリによって圧縮および解凍されたデータ量を報告するドキュメントです。

network.compression.snappy

Snappy ライブラリを使用して圧縮および解凍されたバイト数に関する統計を返すドキュメントです。

network.compression.zstd

zstd ライブラリを使用して圧縮および解凍されたバイト数に関する統計を返すドキュメントです。

network.compression.zlib

zlib ライブラリを使用して圧縮および解凍されたバイト数に関する統計を返すドキュメントです。

network.serviceExecutors

バージョン 5.0 で追加

クライアントがリクエストした操作を実行するサービス実行プログラムに関するデータを報告するドキュメントです。

network.serviceExecutors.passthrough

バージョン 5.0 で追加

passthrough サービス実行プログラムのスレッドとクライアントに関するデータを報告するドキュメントです。passthrough サービス実行プログラムは、クライアントごとに新しいスレッドを作成し、クライアントの終了後にそのスレッドを破棄します。

network.serviceExecutors.passthrough.threadsRunning

バージョン 5.0 で追加

passthrough サービス実行プログラムで実行されているスレッド数です。

network.serviceExecutors.passthrough.clientsInTotal

バージョン 5.0 で追加

passthrough サービス実行プログラムに割り当てられたクライアントの合計数です。現在実行中のリクエスト以外でも、クライアントを passthrough サービス実行プログラムに割り当てることができます。

network.serviceExecutors.passthrough.clientsRunning

バージョン 5.0 で追加

現在 passthrough サービス実行プログラムを使用してリクエストを実行しているクライアントの数です。

network.serviceExecutors.passthrough.clientsWaitingForData

バージョン 5.0 で追加

passthroughサービス実行プログラムを使用してネットワークからの受信データを待機しているクライアントの数です。

network.serviceExecutors.fixed

バージョン 5.0 で追加

fixed サービス実行プログラムのスレッドとクライアントに関するデータを報告するドキュメントです。fixed サービス実行プログラムには決められた数のスレッドがあります。スレッドはクライアントに一時的に割り当てられ、クライアントが終了した後もスレッドは保持されます。

network.serviceExecutors.fixed.threadsRunning

バージョン 5.0 で追加

fixed サービス実行プログラムで実行されているスレッド数です。

network.serviceExecutors.fixed.clientsInTotal

バージョン 5.0 で追加

fixed サービス実行プログラムに割り当てられたクライアントの合計数です。現在実行中のリクエスト以外でも、クライアントを fixed サービス実行プログラムに割り当てることができます。

network.serviceExecutors.fixed.clientsRunning

バージョン 5.0 で追加

現在 fixed サービス実行プログラムを使用してリクエストを実行しているクライアントの数です。

network.serviceExecutors.fixed.clientsWaitingForData

バージョン 5.0 で追加

fixedサービス実行プログラムを使用してネットワークからの受信データを待機しているクライアントの数です。

network.listenerProcessingTime

バージョン 6.3 で追加

データベース リスナーが着信データベース接続リクエストを専用スレッドに割り当てるのにかかった合計時間を報告するドキュメントです。

network.listenerProcessingTime.durationMicros

バージョン 6.3 で追加

データベース リスナーが、着信データベース接続リクエストをデータベース操作を実行する専用スレッドに割り当てるのかかった合計時間(マイクロ秒単位)です。

opLatencies : {
reads : <document>,
writes : <document>,
commands : <document>,
transactions : <document>
},
opLatencies

インスタンス全体での操作レイテンシを含むドキュメントです。このドキュメントの説明については、latencyStats ドキュメントを参照してください。

MongoDB 6.2 以降、opLatencies メトリクスは mongod インスタンスと mongos インスタンスの両方について報告します。mongos が報告するレイテンシには、mongod インスタンスと mongos インスタンス間の操作レイテンシ時間および通信時間が含まれます。

opLatencies.reads

読み取りリクエストのレイテンシ統計

opLatencies.writes

書込み (write)操作のレイテンシ統計

opLatencies.commands

データベースコマンドのレイテンシ統計

opLatencies.transactions

データベース トランザクションのレイテンシ統計です。

警告

削除

mongod インスタンスのみ

opReadConcernCounters : {
available : Long("<num>"),
linearizable : Long("<num>"),
local : Long("<num>"),
majority : Long("<num>"),
snapshot : Long("<num>"),
none : Long("<num>")
}
opReadConcernCounters

バージョン 5.0 で削除readConcernCounters に置き換えられました。

前回の起動以降 mongod インスタンスに対してクエリ操作によって指定された読み取り保証 (read concern) レベルを報告するドキュメントです。

指定済み w
説明
"available"
読み取り保証 (read concern) レベル "available" を指定したクエリ操作の数です。
"linearizable"
読み取り保証 (read concern) レベル "linearizable" を指定したクエリ操作の数です。
"local"
読み取り保証 (read concern) レベル "local" を指定したクエリ操作の数です。
"majority"
読み取り保証 (read concern) レベル "majority" を指定したクエリ操作の数です。
"snapshot"
読み取り保証 (read concern) レベル "snapshot" を指定したクエリ操作の数です。
"none"
読み取り保証 (read concern) レベルを指定せず、デフォルトの読み取り保証 (read concern) レベルを使用したクエリ操作の数です。

opReadConcernCounters の合計は opcounters.query と等しくなります。

mongod インスタンスのみ

opWriteConcernCounters : {
insert : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
},
none : Long("<num>"),
noneInfo : {
CWWC : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
}
},
implicitDefault : {
wmajority : Long("<num>")
wnum : {
<num> : Long("<num>"),
...
}
}
}
},
update : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
},
none : Long("<num>"),
noneInfo : {
CWWC : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
}
wtag : {
<tag1> : Long("<num>"),
...
}
},
implicitDefault : {
wmajority : Long("<num>")
wnum : {
<num> : Long("<num>"),
...
}
}
}
},
delete : {
wmajority : Long("<num>")
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
},
none : Long("<num>"),
noneInfo : {
CWWC : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
}
},
implicitDefault : {
wmajority : Long("<num>")
wnum : {
<num> : Long("<num>"),
...
}
}
}
}
}
opWriteConcernCounters

前回の起動以降 mongod インスタンスに対して書込み (write) 操作によって指定された書込み保証 (write concern) を報告するドキュメントです。

具体的には、opWriteConcernCounters は、書き込み操作によって指定された w: <value> について報告します。書き込み保証に関するジャーナル フラグ オプション(j)とタイムアウト オプション(wtimeout)はカウントに影響しません。操作がタイムアウトした場合でも、カウントは増加します。

注意

reportOpWriteConcernCountersInServerStatus パラメータが true (デフォルトではfalse)に設定されている場合にのみ使用できます。

opWriteConcernCounters.insert

前回の起動以降 mongod インスタンスに対して挿入操作によって指定された w: <value> を報告するドキュメントです。

注意

reportOpWriteConcernCountersInServerStatus パラメータが true (デフォルトではfalse)に設定されている場合にのみ使用できます。

insert : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
},
none : Long("<num>"),
noneInfo : {
CWWC : {
wmajority : Long("<num>"),
wnum : {},
wtag : {}
},
implicitDefault : {
wmajority : Long("<num>")
wnum : {}
}
}
},
指定済み w
説明
"wmajority"
w: "majority" を指定した挿入操作の数。
"wnum"
w: <num> を指定した挿入操作の数。カウントは特定の「<num>」ごとにグループ化されます。
"wtag"
w: <tag> を指定した挿入操作の数。カウントは特定の <tag> ごとにグループ化されます。
"none"
w 値が指定されていない挿入操作の数です。これらの操作では、デフォルトの w「majority」が使用されます。
"noneInfo"

デフォルトの書込み保証 (write concern) を使用する非トランザクション クエリ操作の数です。メトリクスは cluster wide write concern(グローバルデフォルトの書込み保証 (write concern))と暗黙のデフォルトの書込み保証 (write concern) の使用状況を追跡します。

opWriteConcernCounters.noneInfo の値の合計は opWriteConcernCounters.none の値と等しくなっている必要があります。

opWriteConcernCounters.insert の合計は opcounters.insert と等しくなります。

opWriteConcernCounters.update

前回の起動以降 mongod インスタンスに対するアップデート操作によって指定された w: <value> を報告するドキュメントです。

注意

reportOpWriteConcernCountersInServerStatus パラメータが true (デフォルトではfalse)に設定されている場合にのみ使用できます。

update : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
},
none : Long("<num>"),
noneInfo : {
CWWC : {
wmajority : Long("<num>"),
wnum : {},
wtag : {}
},
implicitDefault : {
wmajority : Long("<num>")
wnum : {}
}
}
},
指定済み w
説明
"wmajority"
w: "majority" を指定したアップデート操作の数です。
"wnum"
w: <num> を指定したアップデート操作の数です。カウントは特定の <num> ごとにグループ化されます。
"wtag"
w: <tag> を指定したアップデート操作の数です。カウントは特定の <tag> ごとにグループ化されます。
"none"
w 値が指定されていないアップデート操作の数です。これらの操作では、デフォルトの w 値である 1 が使用されます。
"noneInfo"

デフォルトの書込み保証 (write concern) を使用する非トランザクション クエリ操作の数です。メトリクスは cluster wide write concern(グローバルデフォルトの書込み保証 (write concern))と暗黙のデフォルトの書込み保証 (write concern) の使用状況を追跡します。

opWriteConcernCounters.noneInfo の値の合計は opWriteConcernCounters.none の値と等しくなっている必要があります。

opWriteConcernCounters.update の合計は opcounters.update と等しくなります。

opWriteConcernCounters.delete

前回の起動以降 mongod インスタンスに対する削除操作によって指定された w: <value> を報告するドキュメントです。

注意

reportOpWriteConcernCountersInServerStatus パラメータが true (デフォルトではfalse)に設定されている場合にのみ使用できます。

delete : {
wmajority : Long("<num>"),
wnum : {
<num> : Long("<num>"),
...
},
wtag : {
<tag1> : Long("<num>"),
...
},
none : Long("<num>"),
noneInfo : {
CWWC : {
wmajority : Long("<num>"),
wnum : {},
wtag : {}
},
implicitDefault : {
wmajority : Long("<num>")
wnum : {}
}
}
}
指定済み w
説明
"wmajority"
w: "majority" を指定した削除操作の数。
"wnum"
w: <num> を指定した削除操作の数。カウントは特定の <num> ごとにグループ化されます。
"wtag"
w: <tag> を指定した削除操作の数。カウントは特定の <tag> ごとにグループ化されます。
"none"
w 値が指定されていない削除操作の数。これらの操作では、デフォルトの w 値である 1 が使用されます。
"noneInfo"

デフォルトの書込み保証 (write concern) を使用する非トランザクション クエリ操作の数です。メトリクスは cluster wide write concern(グローバルデフォルトの書込み保証 (write concern))と暗黙のデフォルトの書込み保証 (write concern) の使用状況を追跡します。

opWriteConcernCounters.noneInfo の値の合計は opWriteConcernCounters.none の値と等しくなっている必要があります。

opWriteConcernCounters.delete の合計は opcounters.delete と等しくなります。

opcounters : {
insert : Long("<num>"),
query : Long("<num>"),
update : Long("<num>"),
delete : Long("<num>"),
getmore : Long("<num>"),
command : Long("<num>"),
},
opcounters

mongodインスタンスが最後に起動されて以降のデータベース操作をタイプ別に報告するドキュメント。

これらの数値は、次回の再起動まで時間の経過とともに増加します。これらの値を一定の期間分析し、データベースの使用状況を追跡します。

注意

opcounters のデータは、一括挿入や複数のアップデート操作など、複数のドキュメントに影響する操作を単一の操作として扱います。より詳細なドキュメント レベルの操作追跡については、metrics.document を参照してください。

さらに、以下の値は受け付けた操作を反映するため、操作が成功しなくとも増加します。

opcounters.insert

mongod インスタンスが最後に起動されて以降に受け取った挿入操作の合計数。

opcounters.query

mongodインスタンスが最後に起動されて以降に受け取ったクエリの合計数。MongoDB 7.1 以降では、集計はクエリ操作としてカウントされ、この値が増加します。

opcounters.update

mongod インスタンスが最後に起動されて以降に受け取った更新操作の合計数。

opcounters.delete

mongod インスタンスが最後に起動されて以降の削除操作の合計数。

opcounters.getmore

mongod インスタンスが最後に起動されて以降の getMore 操作の合計数。クエリ数が少ない場合でも、このカウンターは高くなることがあります。セカンダリノードは、レプリケーション プロセスの一部として getMore 操作を送信します。

opcounters.command

mongodインスタンスが最後に起動されて以降のデータベースに対して発行されたコマンドの合計数。

opcounters.command は、以下のコマンド除くすべてのコマンドをカウントします。

opcounters.deprecated

opQuery MongoDB 5.0 で非推奨になったものの一時的にサポートされている命令コードに対するリクエスト数をカウントします。このセクションは、非推奨の命令コードが使用されている場合にのみ db.serverStatus() 出力に表示されます。

mongod が起動すると、カウンターはリセットされます。

deprecated: {
opQuery: Long("<num>"),
}

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl : {
insert : Long("<num>"),
query : Long("<num>"),
update : Long("<num>"),
delete : Long("<num>"),
getmore : Long("<num>"),
command : Long("<num>"),
},
opcountersRepl

mongod インスタンスが最後に起動されて以降のデータベース レプリケーション操作をタイプ別に報告するドキュメントです。

これらの値は、現在のホストがレプリカセットのノードである場合にのみ表示されます。

これらの値が opcounters 値と異なるのは、MongoDB がレプリケーション中に操作を直列化する方法が原因です。レプリケーションの詳細については、「レプリケーション」を参照してください。

これらの数値は、次回の再起動まで、データベースの使用状況に応じて時間の経過とともに増加します。これらの値を一定の期間分析し、データベースの使用状況を追跡します。

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl.insert

mongod インスタンスが最後に起動されて以降に複製された挿入操作の総数。

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl.query

mongodインスタンスが最後に起動されて以降に複製されたクエリの合計数。

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl.update

mongodインスタンスが最後に起動されて以降に複製されたアップデートの合計数。

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl.delete

mongod インスタンスが最後に起動されて以降に複製された削除操作の合計数。

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl.getmore

mongod インスタンスが最後に起動されて以降の getMore 操作の合計数。クエリ数が少ない場合でも、このカウンターは高くなることがあります。セカンダリノードは、レプリケーション プロセスの一部として getMore 操作を送信します。

返された opcountersRepl.*値は NumberLong 型です。

opcountersRepl.command

mongodインスタンスが最後に起動されて以降にデータベースに発行された複製コマンドの合計数。

返された opcountersRepl.*値は NumberLong 型です。

oplogTruncation : {
totalTimeProcessingMicros : Long("<num>"),
processingMethod : <string>,
oplogMinRetentionHours : <double>
totalTimeTruncatingMicros : Long("<num>"),
truncateCount : Long("<num>")
},
oplogTruncation

Oplog の切り捨てについて報告するドキュメント

このフィールドは、現在のインスタンスがレプリカセットのノードであり 、 自己管理型配置用 に WiredTiger storage engine または インメモリ storage engine のいずれかを使用している場合にのみ表示されます。

WiredTiger ストレージ エンジンで利用できます。

oplogTruncation.totalTimeProcessingMicros

oplog を切り捨てる時点を決定するために oplog をスキャンまたはサンプルするのにかかった合計時間(マイクロ秒単位)。

totalTimeProcessingMicrosは、 mongodインスタンスが既存のデータファイルで起動された場合にのみ意味があります(つまり 自己管理型配置用の インメモリ ストレージ エンジン では意味がありません)。

詳細は、次を参照してください: oplogTruncation.processingMethod

WiredTiger ストレージ エンジンで利用できます。

oplogTruncation.processingMethod

起動時に oplog を切り捨てる時点を決定するために使用される方法。値は "sampling" または "scanning"のいずれかです。

processingMethodは、 mongodインスタンスが既存のデータファイルで起動された場合にのみ意味があります(つまり 自己管理型配置用の インメモリ ストレージ エンジン では意味がありません)。

WiredTiger ストレージ エンジンで利用できます。

oplogTruncation.oplogMinRetentionHours

oplog の最小保持期間(単位は時間)。oplog が oplog サイズを超えた場合、mongod は、設定された保持値よりも古い oplog エントリのみを切り捨てます。

mongod がレプリカセットのノードであり、次の場合にのみ表示されます。

oplogTruncation.totalTimeTruncatingMicros

Oplog の切り捨てにかかった累計時間(マイクロ秒単位)です。

WiredTiger ストレージ エンジンで利用できます。

oplogTruncation.truncateCount

切り捨てられた oplog の累計数。

WiredTiger ストレージ エンジンで利用できます。

バージョン 7.0 で追加

planCache : {
totalQueryShapes : Long("<num>"),
totalSizeEstimateBytes : Long("<num>"),
classic : {
hits : Long("<num>"),
misses : Long("<num>")
},
sbe : {
hits : Long("<num>"),
misses: Long("<num>")
}
}
planCache

クエリプラン キャッシュ統計を報告するドキュメントです。

planCache.totalQueryShapes

クエリシェイプの概算。

7.2 以前のバージョンでは、クエリシェイプ数に関する情報は query.planCacheTotalQueryShapes フィールドに保存されていました。

バージョン 7.2 の新機能7.0.5 でも利用可能

planCache.totalSizeEstimateBytes

プラン キャッシュの合計サイズ(バイト単位)です。

7.2 以前のバージョンでは、プラン キャッシュのサイズに関する情報は query.planCacheTotalSizeEstimateBytes フィールドに保存されていました。

バージョン 7.2 の新機能7.0.5 でも利用可能

planCache.classic.hits

クエリ キャッシュで見つかり、クエリ プランニング フェーズを回避するために再利用された、クラシック 実行エンジンのクエリプラン数

planCache.classic.misses

クエリ キャッシュで見つからず、クエリ プランニング フェーズを通過した、クラシック実行エンジンのクエリプランの数です。

planCache.sbe.hits

クエリ キャッシュで見つかり、クエリ プランニング フェーズを回避するために再利用された、スロットベースの実行エンジン クエリプランの数

planCache.sbe.misses

クエリキャッシュに見つからず、クエリプランニングフェーズを通過したスロットベースの実行エンジンのプラン数。

バージョン7.0.12の新機能: ( 6.0.7以降でも利用可能

queryStats: {
numEvicted: Long("<num>"),
numRateLimitedRequests: Long("<num>"),
queryStatsStoreSizeEstimateBytes: Long("<num>"),
numQueryStatsStoreWriteErrors: Long("<num>"),
numHmacApplicationErrors: Long("<num>")
},
queryStats

$queryStats集計ステージのメトリクスを含むドキュメント。

queryStats.numEvicted

スペースの制約により、 $queryStats仮想コレクションがエビクションしたクエリの数。

queryStats.numRateLimitedRequests

レート制限により、クエリのクエリ統計が記録されなかった回数。

queryStats.queryStatsStoreSizeEstimateBytes

$queryStats仮想コレクション内のオブジェクトの現在の推定サイズ。

queryStats.numQueryStatsStoreWriteErrors

この MongoDB プロセスが新しいクエリ統計キーの保存に失敗した回数。 通常、このような失敗は$queryStatsの仮想コレクションの容量が不足した場合に発生します。

queryStats.numHmacApplicationErrors

$queryStatstransformIdentifiersオプションとともに呼び出された場合に、この MongoDB プロセスが一方向トークン化されたクエリ統計キーの計算に失敗した回数。

バージョン 7.0 で追加

queryAnalyzers: {
activeCollections: <integer>,
totalCollections: <integer>,
totalSampledReadsCount: <integer>,
totalSampledWritesCount: <integer>,
totalSampledReadsBytes: <integer>,
totalSampledWritesBytes: <integer>
}
queryAnalyzers.activeCollections

クエリ アナライザがアクティブにサンプリングしたコレクションの数です。

queryAnalyzers.totalCollections

サンプリングされたコレクションの合計数です。

queryAnalyzers.totalSampledReadsCount

サンプリングされた読み取りクエリの合計数

queryAnalyzers.totalSampledWritesCount

サンプリングされた書込み (write) クエリの合計数です。

queryAnalyzers.totalSampledReadsBytes

サンプリングされた読み取りクエリの合計サイズ(バイト単位)です。このメトリクスは、 mongodserverStatus を実行している場合にのみ使用できます。

queryAnalyzers.totalSampledWritesBytes

サンプリングされた書込み (write) クエリの合計サイズ(バイト単位)。このメトリクスは、 mongodserverStatus を実行している場合にのみ使用できます。

バージョン 5.0 で追加

readConcernCounters : {
nonTransactionOps : {
none : Long("<num>"),
noneInfo : {
CWRC : {
local : Long("<num>"),
available : Long("<num>"),
majority : Long("<num>")
},
implicitDefault : {
local : Long("<num>"),
available : Long("<num>")
}
},
local : Long("<num>"),
available : Long("<num>"),
majority : Long("<num>"),
snapshot : {
withClusterTime : Long("<num>"),
withoutClusterTime : Long("<num>")
},
linearizable : Long("<num>")
},
transactionOps : {
none : Long("<num>"),
noneInfo : {
CWRC : {
local : Long("<num>"),
available : Long("<num>"),
majority : Long("<num>")
},
implicitDefault : {
local : Long("<num>"),
available : Long("<num>")
}
},
local : Long("<num>"),
majority : Long("<num>"),
snapshot : {
withClusterTime : Long("<num>"),
withoutClusterTime : Long("<num>")
}
}
},
readConcernCounters

クエリ操作で指定された読み取り保証(read concern)レベルについて報告するドキュメント。このドキュメントには、readConcernCounters.nonTransactionOps および readConcernCounters.transactionOps ドキュメントが含まれています。

readConcernCounters.nonTransactionOps

データベース サーバーが最後に起動して以降に実行された非トランザクション クエリ操作によって指定された、読み取り保証 (read concern) レベルについて報告するドキュメント。

readConcernCounters.nonTransactionOps.none

読み取り保証 (read concern) レベルを指定せず、次のいずれかを使用した非トランザクション クエリ操作の数。

readConcernCounters.nonTransactionOps.noneInfo

グローバル デフォルトの読み取り保証 (read concern) と暗黙のデフォルト読み取り保証 (read concern) を使用する非トランザクション クエリ操作の数。

readConcernCounters.nonTransactionOps.noneInfo の値の合計は readConcernCounters.nonTransactionOps.none の値と等しくなっている必要があります。

readConcernCounters.nonTransactionOps.local

"local" 読み取り保証 (read concern) を指定した非トランザクション クエリ操作の数。

readConcernCounters.nonTransactionOps.available

"available" 読み取り保証 (read concern) を指定した非トランザクション クエリ操作の数。

readConcernCounters.nonTransactionOps.majority

"majority" 読み取り保証 (read concern) を指定した非トランザクション クエリ操作の数。

readConcernCounters.nonTransactionOps.snapshot

"snapshot" 読み取り保証 (read concern) レベルを指定した非トランザクション クエリ操作を含むドキュメントです。

readConcernCounters.nonTransactionOps.snapshot.withClusterTime

"snapshot" 読み取り保証 (read concern) レベルと特定の時点のクラスター時間を指定した非トランザクション クエリ操作の数です。

readConcernCounters.nonTransactionOps.snapshot.withoutClusterTime

クラスター時間を除いて "snapshot" 読み取り保証 (read concern) レベルを指定した非トランザクション クエリ操作の数。つまり、ポイント イン タイムは除かれ、サーバーはノードで使用可能な、最新のコミット済みのスナップショットを読み取ります。

readConcernCounters.nonTransactionOps.linearizable

"linearizable" 読み取り保証 (read concern) を指定した非トランザクション クエリ操作の数。

readConcernCounters.transactionOps

データベース サーバーが最後に起動して以降に実行されたトランザクション クエリ操作によって指定された、読み取り保証 (read concern) について報告するドキュメントです。

readConcernCounters.transactionOps.none

読み取り保証 (read concern) レベルを指定せず、デフォルトの読み取り保証 (read concern) レベル、または setDefaultRWConcern コマンドで追加された、グローバル デフォルトの読み取り保証 (read concern) または書込み保証 (write concern) 構成を使用したトランザクション クエリ操作の数です。

readConcernCounters.transactionOps.noneInfo

トランザクション クエリ操作で使用される、グローバル デフォルト読み取り保証 (read concern) と暗黙のデフォルト読み取り保証 (read concern) に関する情報

readConcernCounters.transactionOps.local

"local" 読み取り保証 (read concern) レベルを指定したトランザクション クエリ操作の数

readConcernCounters.transactionOps.available

"available" 読み取り保証 (read concern) レベルを指定したトランザクション クエリ操作の数

readConcernCounters.transactionOps.majority

"majority" 読み取り保証 (read concern) レベルを指定したトランザクション クエリ操作の数

readConcernCounters.transactionOps.snapshot

"snapshot" 読み取り保証 (read concern) レベルを指定したトランザクションクエリ操作を含むドキュメントです。

readConcernCounters.transactionOps.snapshot.withClusterTime

"snapshot" 読み取り保証 (read concern) レベルと特定の時点のクラスター時間を指定したトランザクション クエリ操作の数

readConcernCounters.transactionOps.snapshot.withoutClusterTime

クラスター時間を除いて "snapshot" 読み取り保証 (read concern) レベルを指定したトランザクション クエリ操作の数。つまり、ポイント イン タイムは除かれ、サーバーはノードで使用可能な、最新のコミット済みのスナップショットを読み取ります。

MongoDB 7.0.3 以降で使用可能(および 6.0.11)。

mongod でのみ利用可能です。

readPreferenceCounters : {
executedOnPrimary : {
primary : {
internal : Long("<num>"),
external : Long("<num>")
},
primaryPreferred : {
internal : Long("<num>"),
external : Long("<num>")
},
secondary : {
internal : Long("<num>"),
external : Long("<num>")
},
secondaryPreferred : {
internal : Long("<num>"),
external : Long("<num>")
},
nearest : {
internal : Long("<num>"),
external : Long("<num>")
},
tagged : {
internal : Long("<num>"),
external : Long("<num>")
}
},
executedOnSecondary : {
primary : {
internal : Long("<num>"),
external : Long("<num>")
},
primaryPreferred : {
internal : Long("<num>"),
external : Long("<num>")
},
secondary : {
internal : Long("<num>"),
external : Long("<num>")
},
secondaryPreferred : {
internal : Long("<num>"),
external : Long("<num>")
},
nearest : {
internal : Long("<num>"),
external : Long("<num>")
},
tagged : {
internal : Long("<num>"),
external : Long("<num>")
}
}
}
readPreferenceCounters

mongod でのみ利用可能です。

指定された読み込み設定 (read preference) を備えたこの mongod ノードによって受信した操作の数を報告するドキュメント。

taggedサブフィールドは、タグとともに渡される任意の読み込み設定 (read preference) を参照します。

readPreferenceCounters.executedOnPrimary

mongod でのみ利用可能です。

プライマリとして機能している間にノードが受信した、内部および外部の読み込み設定 (read preference) 操作の数をカウントするドキュメント。

readPreferenceCounters.executedOnSecondary

mongod でのみ利用可能です。

セカンダリとして機能している間にノードが受信した、内部および外部の読み込み設定 (read preference) 操作の数をカウントするドキュメント。

repl : {
hosts : [
<string>,
<string>,
<string>
],
setName : <string>,
setVersion : <num>,
isWritablePrimary : <boolean>,
secondary : <boolean>,
primary : <hostname>,
me : <hostname>,
electionId : ObjectId(""),
primaryOnlyServices: {
ReshardingRecipientService: { state: <string>, numInstances: <num> },
RenameCollectionParticipantService: { state: <string>, numInstances: <num> },
ShardingDDLCoordinator: { state: <string>, numInstances: <num> },
ReshardingDonorService: { state: <string>, numInstances: <num> }
},
rbid : <num>,
replicationProgress : [
{
rid : <ObjectId>,
optime : { ts: <timestamp>, term: <num> },
host : <hostname>,
memberId : <num>
},
...
]
}
repl

レプリカセットの構成を報告するドキュメント。repl は、現在のホストがレプリカセットである場合にのみ表示されます。レプリケーションの詳細については、「レプリケーション」を参照してください。

repl.hosts

現在のレプリカ セット ノードのホスト名とポート情報("host:port")の配列。

repl.setName

現在のレプリカセットの名前を含む文字列。この値は、--replSet コマンドライン引数、または構成ファイル内の replSetName の値を反映します。

repl.isWritablePrimary

現在のノードがレプリカセットのプライマリかどうかを示すブール値。

repl.secondary

現在のノードがレプリカセットのセカンダリかどうかを示すブール値。

repl.primary

レプリカセットの現在のプライマリノードのホスト名とポート情報( "host:port" )。

repl.me

レプリカセットの現在のノードのホスト名とポート情報("host:port" )。

repl.primaryOnlyServices

サーバー上でアクティブな各プライマリ サービスのインスタンス数とインスタンスのステータスを含むドキュメントです。プライマリサービスは、サーバーがプライマリの場合にのみ開始できますが、サーバーの状態が変化した後も実行を継続し、完了することができます。

バージョン 5.0 で追加

repl.primaryOnlyServices.ReshardingRecipientService

ReshardingRecipientService のインスタンスの状態と数を含むドキュメント

受信者は、新しいシャードキーゾーンに従って、再シャーディング操作の結果としてチャンクを所有するシャードです。

リシャーディング コーディネーターは、各ドナー シャード プライマリと受信者シャード プライマリに対して、一時的にシャーディングされたコレクションの名前を変更するよう指示します。一時的なコレクションは、新しいリシャーディングされたコレクションになります。

バージョン 5.0 で追加

repl.primaryOnlyServices.RenameCollectionParticipantService

RenameCollectionParticipantService のインスタンスの状態と数を含むドキュメント

RenameCollectionParticipantService は、シャードが renameCollection リクエストを受信した後、システム障害が発生した場合にシャードがローカルの名前変更を再開できるようにするものです。

バージョン 5.0 で追加

repl.primaryOnlyServices.ShardingDDLCoordinator

ShardingDDLCoordinator のインスタンスの状態と数を含むドキュメント

ShardingDDLCoordinator サービスは、データベースの作成データベースの削除コレクションの名前変更など、プライマリ データベースの DDL 操作を管理します。

ShardingDDLCoordinator は、シャーディングされたクラスター内の特定の時点で、各データベースに対して 1 つの DDL 操作が実行されるようにします。

バージョン 5.0 で追加

repl.primaryOnlyServices.ReshardingDonorService

ReshardingDonorService のインスタンスの状態と数を含むドキュメント

ドナーは、リネーム操作が完了する前にシャーディングされたコレクションのチャンクを所有するシャードです。

リシャーディング コーディネーターは、各ドナー シャード プライマリと受信者シャード プライマリに対して、一時的にシャーディングされたコレクションの名前を変更するよう指示します。一時的なコレクションは、新しいリシャーディングされたコレクションになります。

バージョン 5.0 で追加

repl.rbid

ロールバック識別子です。この mongod インスタンスでロールバックが発生したかを判断するために使用されます。

repl.replicationProgress

レプリカセットの各ノードに対して 1 つのドキュメントを持つ配列で、このノードにレプリケーション プロセスを報告します。通常はプライマリか、連結したレプリケーションを使用している場合はセカンダリです。

この出力を含めるには、次のように repl オプションを serverStatus に渡す必要があります。

db.serverStatus({ "repl": 1 })
db.runCommand({ "serverStatus": 1, "repl": 1 })

repl.replicationProgress セクションの内容は、各ノードのレプリケーションのソースによって異なります。このセクションは内部操作をサポートしており、内部および診断のみを目的としています。

repl.replicationProgress[n].rid

レプリカセットのノードの ID として使用される ObjectId です。内部でのみ使用します。

repl.replicationProgress[n].optime

このノードから報告された、ノードが適用した oplog からの最後の操作に関する情報。

repl.replicationProgress[n].host

[hostname]:[port] 形式の、レプリカセットのノードのホスト名。

repl.replicationProgress[n].memberID

レプリカセットのこのノードに対するの整数識別子。

security : {
authentication : {
saslSupportedMechsReceived : <num>,
mechanisms : {
MONGODB-X509 : {
speculativeAuthenticate : {
received : Long("<num>"),
successful : Long("<num>")
},
authenticate : {
received : Long("<num>"),
successful : Long("<num>")
}
},
SCRAM-SHA-1 : {
speculativeAuthenticate : {
received : Long("<num>"),
successful : Long("<num>")
},
authenticate : {
received : Long("<num>"),
successful : Long("<num>")
}
},
SCRAM-SHA-256 : {
speculativeAuthenticate : {
received : Long("<num>"),
successful : Long("<num>")
},
authenticate : {
received : Long("<num>"),
successful : Long("<num>")
}
}
}
},
SSLServerSubjectName: <string>,
SSLServerHasCertificateAuthority: <boolean>,
SSLServerCertificateExpirationDate: <date>
},
security

次のアイテムについて報告するドキュメント。

  • 特定の認証メカニズムが mongod または mongos インスタンスに対する認証に使用された回数。

  • mongod または mongos インスタンスの TLS/SSL 証明書(TLS をサポートするmongod または mongos インスタンスにのみ表示されます)

security.authentication.saslSupportedMechsReceived

バージョン 5.0 で追加

hello リクエストが有効な hello.saslSupportedMechs フィールドを含む回数

security.authentication.mechanisms

mongod または mongos インスタンスの認証に特定の認証メカニズムが使用された回数を報告するドキュメントです。このドキュメントの値は、標準の認証と推測的認証を区別します。[1]

注意

mechanisms ドキュメント内のフィールドは、 authenticationMechanisms パラメータの構成によって異なります。mechanisms ドキュメントには、 mongod または mongos インスタンスでサポートされている各認証メカニズムのフィールドが含まれています。

次の例は、x.509 認証のみをサポートする配置に対する mechanisms ドキュメントの形状を示しています。

security.authentication.mechanisms.MONGODB-X509

mongod または mongos インスタンスに対する認証に x.509 が使用された回数を報告するドキュメントです。

x.509 認証の試行とその試行のうち推測的認証だったサブセットの総数を含みます。[1]

security.authentication.mechanisms.MONGODB-X509.speculativeAuthenticate.received

x.509 による推測的認証の試行回数。成功した推測的認証の試行と失敗した推測的認証の試行の両方を含みます。[1]

security.authentication.mechanisms.MONGODB-X509.speculativeAuthenticate.successful

x.509 による推測的認証のうち成功した試行回数。[1]

security.authentication.mechanisms.MONGODB-X509.authenticate.received

x.509 による認証の成功した試行回数と失敗した試行回数。この値には、x.509 による推測的認証の試行が含まれます。

security.authentication.mechanisms.MONGODB-X509.authenticate.successful

x.508 による成功した認証の試行回数。この値には、x.509 を使用して成功した推測的認証の試行が含まれます。

[1]1234 推測的認証は認証プロセスにおけるネットワーク ラウンド トリップの回数を最小限に抑え、パフォーマンスを最適化します。
security.SSLServerSubjectName

mongod または mongos インスタンスの TLS/SSL 証明書に関連付けられたサブジェクト名。

security.SSLServerHasCertificateAuthority

ブール値は次のようになります。

  • true mongod または mongos インスタンスの TLS/SSL 証明書が認証局に関連付けられている場合

  • false TLS/SSL 証明書が自己署名の場合

security.SSLServerCertificateExpirationDate

mongod または mongosインスタンスの TLS/SSL 証明書の有効期限の日時。

{
configsvrConnectionString : 'csRS/cfg1.example.net:27019,cfg2.example.net:27019,cfg2.example.net:27019',
lastSeenConfigServerOpTime : {
ts : <timestamp>,
t : Long("<num>")
},
maxChunkSizeInBytes : Long("<num>")
}
sharding

シャーディングされたクラスターに関するデータを含むドキュメント。lastSeenConfigServerOpTime は、mongos またはシャード ノードにのみ存在し、コンフィギュレーションサーバーには存在しません。

sharding.configsvrConnectionString

コンフィギュレーションサーバーの接続文字列

sharding.lastSeenConfigServerOpTime

mongos またはシャード ノードが確認した CSRS プライマリの最新の optimeです。optime ドキュメントには、次のものが含まれます。

lastSeenConfigServerOpTime は、シャーディングされたクラスターが CSRS を使用する場合にのみ存在します。

sharding.maxChunkSizeInBytes

移行する範囲の最大サイズ制限。この値がコンフィギュレーションサーバー上で最近アップデートされた場合、maxChunkSizeInBytes は最新の値を反映していない可能性があります。

シャードのノードに対して実行した場合:

shardingStatistics : {
countStaleConfigErrors : Long("<num>"),
countDonorMoveChunkStarted : Long("<num>"),
countDonorMoveChunkCommitted : Long("<num>"),
countDonorMoveChunkAborted : Long("<num>"),
totalDonorMoveChunkTimeMillis : Long("<num>"),
totalDonorChunkCloneTimeMillis : Long("<num>"),
totalCriticalSectionCommitTimeMillis : Long("<num>"),
totalCriticalSectionTimeMillis : Long("<num>"),
countDocsClonedOnRecipient : Long("<num>"),
countBytesClonedOnRecipient : Long("<num>"),
countDocsClonedOnCatchUpOnRecipient : Long("<num>"),
countBytesClonedOnCatchUpOnRecipient : Long("<num>"),
countDocsClonedOnDonor : Long("<num>"),
countRecipientMoveChunkStarted : Long("<num>"),
countDocsDeletedByRangeDeleter : Long("<num>"),
countDonorMoveChunkLockTimeout : Long("<num>"),
unfinishedMigrationFromPreviousPrimary : Long("<num>"),
chunkMigrationConcurrency : Long("<num>"),
catalogCache : {
numDatabaseEntries : Long("<num>"),
numCollectionEntries : Long("<num>"),
countStaleConfigErrors : Long("<num>"),
totalRefreshWaitTimeMicros : Long("<num>"),
numActiveIncrementalRefreshes : Long("<num>"),
countIncrementalRefreshesStarted : Long("<num>"),
numActiveFullRefreshes : Long("<num>"),
countFullRefreshesStarted : Long("<num>"),
countFailedRefreshes : Long("<num>")
},
rangeDeleterTasks : <num>,
resharding : {
countStarted : Long("1"),
countSucceeded : Long("1"),
countFailed : Long("0"),
countCanceled : Long("0"),
lastOpEndingChunkImbalance : Long("0"),
active : {
documentsCopied : Long("0"),
bytesCopied : Long("0"),
countWritesToStashCollections : Long("0"),
countWritesDuringCriticalSection : Long("0"),
countReadsDuringCriticalSection : Long("0"),
oplogEntriesFetched : Long("0"),
oplogEntriesApplied : Long("0"),
insertsApplied : Long("0"),
updatesApplied : Long("0"),
deletesApplied : Long("0")
},
oldestActive : {
coordinatorAllShardsHighestRemainingOperationTimeEstimatedMillis : Long("0"),
coordinatorAllShardsLowestRemainingOperationTimeEstimatedMillis : Long("0"),
recipientRemainingOperationTimeEstimatedMillis : Long("0")
},
latencies : {
collectionCloningTotalRemoteBatchRetrievalTimeMillis : Long("0"),
collectionCloningTotalRemoteBatchesRetrieved : Long("0"),
collectionCloningTotalLocalInsertTimeMillis : Long("0"),
collectionCloningTotalLocalInserts : Long("0"),
oplogFetchingTotalRemoteBatchRetrievalTimeMillis : Long("0"),
oplogFetchingTotalRemoteBatchesRetrieved : Long("0"),
oplogFetchingTotalLocalInsertTimeMillis : Long("0"),
oplogFetchingTotalLocalInserts : Long("0"),
oplogApplyingTotalLocalBatchRetrievalTimeMillis : Long("0"),
oplogApplyingTotalLocalBatchesRetrieved : Long("0"),
oplogApplyingTotalLocalBatchApplyTimeMillis : Long("0"),
oplogApplyingTotalLocalBatchesApplied : Long("0")
},
currentInSteps : {
countInstancesInCoordinatorState1Initializing : Long("0"),
countInstancesInCoordinatorState2PreparingToDonate : Long("0"),
countInstancesInCoordinatorState3Cloning : Long("0"),
countInstancesInCoordinatorState4Applying : Long("0"),
countInstancesInCoordinatorState5BlockingWrites : Long("0"),
countInstancesInCoordinatorState6Aborting : Long("0"),
countInstancesInCoordinatorState7Committing : Long("-1"),
countInstancesInRecipientState1AwaitingFetchTimestamp : Long("0"),
countInstancesInRecipientState2CreatingCollection : Long("0"),
countInstancesInRecipientState3Cloning : Long("0"),
countInstancesInRecipientState4Applying : Long("0"),
countInstancesInRecipientState5Error : Long("0"),
countInstancesInRecipientState6StrictConsistency : Long("0"),
countInstancesInRecipientState7Done : Long("0"),
countInstancesInDonorState1PreparingToDonate : Long("0"),
countInstancesInDonorState2DonatingInitialData : Long("0"),
countInstancesInDonorState3DonatingOplogEntries : Long("0"),
countInstancesInDonorState4PreparingToBlockWrites : Long("0"),
countInstancesInDonorState5Error : Long("0"),
countInstancesInDonorState6BlockingWrites : Long("0"),
countInstancesInDonorState7Done : Long("0")
}
}
}
},

mongosで実行する場合:

shardingStatistics : {
numHostsTargeted: {
find : {
allShards: Long("<num>"),
manyShards: Long("<num>"),
oneShard: Long("<num>"),
unsharded: Long("<num>")
},
insert: {
allShards: Long("<num>"),
manyShards: Long("<num>"),
oneShard: Long("<num>"),
unsharded: Long("<num>")
},
update: {
allShards: Long("<num>"),
manyShards: Long("<num>"),
oneShard: Long("<num>"),
unsharded: Long("<num>")
},
delete: {
allShards: Long("<num>"),
manyShards: Long("<num>"),
oneShard: Long("<num>"),
unsharded: Long("<num>")
},
aggregate: {
allShards: Long("<num>"),
manyShards: Long("<num>"),
oneShard: Long("<num>"),
unsharded: Long("<num>")
}
}
},
catalogCache : {
numDatabaseEntries : Long("<num>"),
numCollectionEntries : Long("<num>"),
countStaleConfigErrors : Long("<num>"),
totalRefreshWaitTimeMicros : Long("<num>"),
numActiveIncrementalRefreshes : Long("<num>"),
countIncrementalRefreshesStarted : Long("<num>"),
numActiveFullRefreshes : Long("<num>"),
countFullRefreshesStarted : Long("<num>"),
countFailedRefreshes : Long("<num>")
}
}

コンフィギュレーションサーバー上で実行した場合

shardingStatistics : {
numShardedCollections : Long("<num>")
}
shardingStatistics

シャーディングされたクラスターのメタデータ更新に関するメトリクスを含むドキュメントです。

shardingStatistics.countStaleConfigErrors

スレッドが古い構成の例外にヒットした合計回数。古い構成の例外によってメタデータの更新がトリガーされるため、この数はメタデータの更新回数にほぼ比例します。

シャードで実行した場合にのみ存在します。

shardingStatistics.countDonorMoveChunkStarted

範囲移行手順 の一環として、MongoDB が moveChunk コマンドまたは moveRange をシャードのプライマリ ノードで開始した合計回数。この増加する数値はチャンクの移行が成功したかどうかを考慮していません。

シャードで実行した場合にのみ存在します。

shardingStatistics.countDonorMoveChunkCommitted

シャードのプライマリ ノードで MongoDB がコミットしたチャンク移行の合計数。

チャンク移行は、範囲移行手順において moveChunk コマンドと moveRange コマンドによって実行されます。

シャード上でのみ利用可能です。

MongoDB 7.0(および 6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.countDonorMoveChunkAborted

シャードのプライマリ ノードで MongoDB が中止したチャンク移行の合計数。

チャンク移行は、範囲移行手順において moveChunk コマンドと moveRange コマンドによって実行されます。

シャード上でのみ利用可能です。

MongoDB 7.0(および 6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.totalDonorMoveChunkTimeMillis

現在のシャードから別のシャードにチャンクを移動するのにかかる累計時間(ミリ秒単位)。範囲移行手順において、各チャンクの移行について moveRange または moveChunk コマンドが開始した時点から時間の計測が始まり、チャンクが別のシャードに移動した時点で計測が終了します。

シャード上でのみ利用可能です。

MongoDB 7.0(および 6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.totalDonorChunkCloneTimeMillis

シャードのプライマリ ノードで範囲移行手順のクローン フェーズにかかる累計時間(ミリ秒単位)。具体的には、このシャードの移行ごとに、 moveRange コマンドと moveChunk コマンドで時間の記録が開始され、範囲移行手順中に発生した変更を適用するために移行先シャードが catchup フェーズに入る前に終了します。

シャードで実行した場合にのみ存在します。

shardingStatistics.totalCriticalSectionCommitTimeMillis

シャードのプライマリ ノードで範囲移行手順のメタデータの更新フェーズにかかる累計時間(ミリ秒単位)。メタデータの更新フェーズ中、MongoDB はコレクションに対するすべての操作をブロックします。

シャードで実行した場合にのみ存在します。

shardingStatistics.totalCriticalSectionTimeMillis

シャードのプライマリ ノードで範囲移行手順のキャッチアップフェーズとメタデータのアップデートフェーズにかかる累計時間(ミリ秒単位)。

キャッチアップ フェーズの期間を計算するには、totalCriticalSectionTimeMillis から totalCriticalSectionCommitTimeMillis を減算します。

totalCriticalSectionTimeMillis - totalCriticalSectionCommitTimeMillis

シャードで実行した場合にのみ存在します。

shardingStatistics.countDocsClonedOnRecipient

受信者シャードのプライマリ ノードにおいて MongoDB がクローニングするドキュメントの増加し続ける累計数。

シャードで実行した場合にのみ存在します。

shardingStatistics.countBytesClonedOnRecipient

受信シャードのプライマリ ノードにおいて、範囲移行手順中に MongoDB がクローニングするバイトの累計数。

データ同期の詳細については、「レプリカセット データの同期」を参照してください。

シャード上でのみ利用可能です。

MongoDB 7.0(および 6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.countDocsClonedOnCatchUpOnRecipient

受信シャードのプライマリ ノードにおいて、 範囲移行手順のキャッチアップ フェーズ中に MongoDB がクローニングするドキュメントの累計数。

データ同期の詳細については、「レプリカセット データの同期」を参照してください。

シャード上でのみ利用可能です。

MongoDB 7.0(および 6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.countBytesClonedOnCatchUpOnRecipient

受信シャードのプライマリ ノードにおいて範囲移行手順のキャッチアップ フェーズ中に MongoDB がクローニングするバイトの、累計数。

データ同期の詳細については、「レプリカセット データの同期」を参照してください。

シャード上でのみ利用可能です。

MongoDB 7.0(および 6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.countDocsClonedOnDonor

MongoDB がドナー シャードのプライマリ ノードでクローニングするドキュメントの、増加し続ける累計数。

シャードで実行した場合にのみ存在します。

shardingStatistics.countRecipientMoveChunkStarted

受信者シャードのプライマリとして機能しているこのノードが(移動の成否にかかわらず)受信を開始したチャンクの、増加し続ける累計数。

シャードで実行した場合にのみ存在します。

shardingStatistics.countDocsDeletedByRangeDeleter

ドナー シャードのプライマリ ノードにおいてチャンクの移行中に MongoDB が削除したドキュメントの、増加し続ける累計数。

シャードで実行した場合にのみ存在します。

バージョン 7.1 で変更

shardingStatistics.countDonorMoveChunkLockTimeout

ドナー シャードのプライマリ ノードにおいてロック取得のタイムアウトにより MongoDB が中止したチャンク移行の、増加し続ける累計数。

シャードで実行した場合にのみ存在します。

shardingStatistics.unfinishedMigrationFromPreviousPrimary

選挙後、以前のプライマリが完了しないままとなった移行の数。この値は、新たに選出された mongod がプライマリへの移行を完了した後にのみアップデートされます。

シャードで実行した場合にのみ存在します。

shardingStatistics.chunkMigrationConcurrency

チャンク移行操作を実行するためのソースシャードと受信シャードのスレッド数。

シャードで実行した場合にのみ存在します。

MongoDB 6.3(および 5.0.15)以降で利用可能。

shardingStatistics.catalogCache

クラスターのルーティング情報キャッシュに関する統計を含むドキュメント。

shardingStatistics.catalogCache.numDatabaseEntries

カタログ キャッシュ内に現存するデータベース エントリの合計数。

shardingStatistics.catalogCache.numCollectionEntries

カタログ キャッシュ内に現存する(全データベースにわたる)コレクション エントリの合計数。

shardingStatistics.catalogCache.countStaleConfigErrors

スレッドが古い構成の例外にヒットした合計回数。古い設定の例外によってメタデータの更新がトリガーされます。

shardingStatistics.catalogCache.totalRefreshWaitTimeMicros

スレッドがメタデータの更新の待機に要した累計時間(マイクロ秒単位)。

shardingStatistics.catalogCache.numActiveIncrementalRefreshes

現在完了待ちのカタログ キャッシュの増分更新数。

shardingStatistics.countIncrementalRefreshesStarted

開始された増分更新の累計数。

shardingStatistics.catalogCache.numActiveFullRefreshes

現在完了待ちのカタログ キャッシュの完全更新数。

shardingStatistics.catalogCache.countFullRefreshesStarted

開始された完全更新の累計数。

shardingStatistics.catalogCache.countFailedRefreshes

失敗した完全更新または増分更新の累計数。

shardingStatistics.rangeDeleterTasks

すぐに実行可能な、または範囲移行手順の一部として実行中の、キューにあるチャンクの範囲削除タスクの現在の合計数。

config.rangeDeletions コレクションのドキュメントを調査し、チャンク移行後にシャードからの削除が保留になっているチャンク範囲に関する情報を確認してください。

シャード ノードで実行される場合にのみ存在します。

shardingStatistics.resharding

リシャーディング操作に関する統計を含むドキュメント。

各シャードは、そのシャードにおける再シャーディング操作の統計を返します。シャードがリシャーディング操作に関与していない場合、そのシャードにはリシャーディング操作に関する統計が含まれません。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.resharding.countStarted

countSucceededcountFailedcountCanceled の合計。再シャーディング操作が開始されたがまだ完了していない場合、合計はさらに 1 増加します。mongod が起動または再起動されると、合計は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.resharding.countSucceeded

成功したリシャーディング操作の数。mongod を起動または再起動すると、番号は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.resharding.countFailed

失敗したリシャーディング操作の数です。mongod を起動または再起動すると、番号は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.resharding.countCanceled

キャンセルされたリシャーディング操作の数です。mongod を起動または再起動すると、番号は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.active.resharding.documentsCopied

現在のリシャーディング操作でドナー シャードから受信者シャードにコピーされたドキュメントの数です。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

バージョン 6.1 で更新

shardingStatistics.resharding.active.bytesCopied

現在のリシャーディング操作でドナー シャードから受信者シャードにコピーされたバイト数。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

バージョン 6.1 で更新

shardingStatistics.resharding.active.countWritesToStashCollections

リシャーディング中の受信者の溜め込みコレクションへの書込み (write) 回数です。

バージョン 6.1 で追加

shardingStatistics.resharding.active.countWritesDuringCriticalSection

現在のリシャーディング操作でクリティカル セクションにおいて実行された書込み (write) 回数。クリティカル セクションは、リシャーディング中のコレクションへの新規の受信書込み (write) を防止します。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

バージョン 6.1 で更新

shardingStatistics.resharding.active.countReadsDuringCriticalSection

リシャーディング中、ドナーのクリティカル セクション中に試行された読み取りの数です。

バージョン 6.1 で追加

shardingStatistics.resharding.active.oplogEntriesFetched

現在の リシャーディング操作oplog から取得されたエントリの数です。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 6.1 で更新

shardingStatistics.resharding.active.oplogEntriesApplied

現在のリシャーディング操作oplog に適用されたエントリの数。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

バージョン 6.1 で更新

shardingStatistics.resharding.active.insertsApplied

リシャーディング中に適用される挿入操作の合計数

バージョン 6.1 で追加

shardingStatistics.resharding.active.updatesApplied

リシャーディング中に適用されたアップデート操作の合計数

バージョン 6.1 で追加

shardingStatistics.resharding.active.deletesApplied

リシャーディング中に適用された削除操作の合計数です。

バージョン 6.1 で追加

shardingStatistics.resharding.oldestActive.coordinatorAllShardsHighestRemainingOperationTimeEstimatedMillis

全シャードにわたって計算された、推定される残り秒数の最高値。推定時間が計算できない場合、値は -1 に設定されます。

バージョン 6.1 で追加

shardingStatistics.resharding.oldestActive.coordinatorAllShardsLowestRemainingOperationTimeEstimatedMillis

全シャードに渡って計算された、推定される残り秒数の最小値です。推定時間が計算できない場合、値は -1 に設定されます。

バージョン 6.1 で追加

shardingStatistics.resharding.oldestActive.recipientRemainingOperationTimeEstimatedMillis

現在のリシャーディング操作で推定される残り時間(ミリ秒単位)。リシャーディング前、または時間を計算できない場合、値は -1 に設定されます。

シャードが複数のリシャーディング操作に関与している場合、このフィールドには、そのシャードが受信側となる、最も古いリシャーディング操作の推定残り時間が含まれます。

バージョン 6.1 で追加

shardingStatistics.resharding.oldestActive.totalOperationTimeElapsedMillis

現在のリシャーディング操作の合計経過時間(ミリ秒単位)です。新たにリシャーディング操作を開始すると、時間は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

shardingStatistics.resharding.latencies

リシャーディング操作に対するタイミング メトリクスです。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.collectionCloningTotalRemoteBatchRetrievalTimeMillis

受信者がドナーからドキュメントのバッチを取得するのにかかった合計時間(ミリ秒単位)。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.collectionCloningTotalRemoteBatchesRetrieved

受信者がドナーから取得したドキュメントの総バッチ数です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.collectionCloningTotalLocalInsertTimeMillis

受信者がドナーからのドキュメントのバッチを挿入するのにかかった合計時間(ミリ秒単位)。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.collectionCloningTotalLocalInserts

受信者が挿入した、ドナーからのドキュメントの総バッチ数

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogFetchingTotalRemoteBatchRetrievalTimeMillis

受信者がドナーからの oplog エントリのバッチを取得するのにかかった時間の合計(ミリ秒単位)。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogFetchingTotalRemoteBatchesRetrieved

受信者がドナーから取得した oplog エントリの総バッチ数です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogFetchingTotalLocalInsertTimeMillis

受信者がドナーからの oplog エントリを挿入するのにかかった合計時間(ミリ秒単位)です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogFetchingTotalLocalInserts

受信者が挿入した、ドナーからの oplog エントリの総バッチ数です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogApplyingTotalLocalBatchRetrievalTimeMillis

フェッチ中に挿入された oplog エントリのバッチを受信者が取得するのにかかった時間の合計(ミリ秒単位)です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogApplyingTotalLocalBatchesRetrieved

取得中に挿入され、受信者が取得した oplog エントリーの総バッチ数です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogApplyingTotalLocalBatchApplyTimeMillis

oplog エントリのバッチの適用に受信者がかかった合計時間 (ミリ秒単位)です。

バージョン 6.1 で追加

shardingStatistics.resharding.latencies.oplogApplyingTotalLocalBatchesApplied

受信者が適用した oplog エントリの総バッチ数。

バージョン 6.1 で追加

shardingStatistics.resharding.totalApplyTimeElapsedMillis

現在のリシャーディング操作における適用ステップの合計経過時間(ミリ秒単位)です。適用ステップでは、受信者シャードは、ドナー シャードから新たに受信した書込み (write) に基づいてデータを変更します。新たにリシャーディング操作を開始すると、時間は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

shardingStatistics.resharding.totalCriticalSectionTimeElapsedMillis

現在のリシャーディング操作におけるクリティカル セクションの合計経過時間(ミリ秒単位)です。クリティカル セクションは、リシャーディング中のコレクションへの新規の受信書込み (write) を防止します。新たにリシャーディング操作を開始すると、時間は 0 に設定されます。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

shardingStatistics.resharding.donorState

現在のリシャーディング操作におけるドナー シャードの状態です。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

返された数値
意味
説明
0
unused
現在のリシャーディング操作においてシャードがドナーではない場合
1
preparing-to-donate
ドナー シャードは、受信者シャードにデータを提供する準備をしています。
2
donating-initial-data
ドナー シャードは受信者シャードにデータを提供します。
3
donating-oplog-entries
ドナー シャードは、受信者シャードに oplog エントリを提供しています。
4
preparing-to-block-writes
ドナー シャードは、リシャーディング中のコレクションへの新規の受信書込み (write) 操作を阻止しようとしています。
5
error
リシャーディング操作中にエラーが発生しました
6
blocking-writes
ドナー シャードは新規の受信書込み (write) 操作を防ぎ、新規の受信書込み (write) が禁止されていることをすべての受信者シャードに通知しました。
7
done
ドナー シャードは古いシャーディングされたコレクションを削除し、リシャーディング操作は完了しました。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

shardingStatistics.resharding.recipientState

現在のリシャーディング操作における受信者シャードの状態です。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

返された数値
意味
説明
0
unused
シャードは、現在のリシャーディング操作の受信者ではありません。
1
awaiting-fetch-timestamp
受信シャードは、ドナー シャードがデータを提供する準備ができるのを待っています。
2
creating-collection
受信者シャードは新しいシャーディングされたコレクションを作成しています。
3
cloning
受信者シャードはドナー シャードからデータを受信しています。
4
applying
受信者シャードは、ドナー シャードからの新規受信書込み (write) に基づいてデータのコピーを変更するために、oplog エントリを適用しています。
5
error
リシャーディング操作中にエラーが発生しました
6
strict-consistency
受信者シャードでは、すべてのデータ変更は一時的なコレクションに保存されます。
7
done
リシャーディング操作が完了しました。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。コンフィギュレーションサーバー上で 0 を返します。

バージョン 5.0 で追加

shardingStatistics.numHostsTargeted

CRUD 操作および集計コマンドの対象となるシャードの数を示します。CRUD 操作または集計コマンドが実行されると、次のメトリクスが増加します。

名前
説明
allShards
すべてのシャードを対象とするコマンド
manyShards
複数のシャードを対象としているコマンド
oneShard
単一のシャードを対象としているコマンド
unsharded
シャーディングされていないコレクションに対して実行されたコマンド

注意

serverStatus コマンドを mongos で実行すると、シャーディングされたクラスターで実行される CRUD および集計操作のインサイトが提供されます。

マルチシャード操作には、スキャッター ギャザー操作とシャードに固有の操作があります。マルチシャードのスキャッター ギャザー操作は、より多くのリソースを消費する可能性があります。shardingStatistics.numHostsTargeted メトリクスを使用すると、シャーディングされたクラスターで実行される集計クエリを調整できます。

shardingStatistics.numShardedCollections

クラスタ内のシャーディングされたコレクションの数を示します。

コンフィギュレーションサーバー上で実行した場合にのみ存在します。

バージョン 6.2 の新機能

shardingStatistics.resharding.coordinatorState

現在のリシャーディング操作におけるリシャーディング コーディネーターの状態です。リシャーディング コーディネーターは、コンフィギュレーションサーバーのプライマリで実行されるスレッドです。新たにリシャーディング操作を開始すると、数値は 0 に設定されます。

返された数値
意味
説明
0
unused
シャードは、現在のリシャーディング操作のコーディネーターではありません。
1
initializing
リシャーディング コーディネーターは、コーディネーター ドキュメントを config.reshardingOperations に挿入し、元のコレクションの config.collections エントリに reshardingFields を追加しました。
2
preparing-to-donate

リシャーディング コーディネーター

  • は一時的なリシャーディング コレクション用の config.collections エントリを作成しました。

  • は新しいシャードキーに基づく範囲に対するエントリを config.chunks に挿入しました。

  • は新しいシャード キーに関連付けられたすべてのゾーンに対するエントリを config.tags に挿入しました。

コーディネーターは、参加シャードにリシャーディング操作を開始するように通知します。その後、コーディネーターはすべてのドナー シャードが minFetchTimestamp を選択し、提供の準備が整うまで待ちます。

3
cloning
リシャーディング コーディネーターは、受信者シャードにデータを提供するようドナー シャードに通知します。コーディネーターは、すべての受信者がドナーからのデータの複製を完了させるのを待機します。
4
applying
リシャーディング コーディネーターは、ドナー シャードから新たに受信した書込み (write) に基づいてデータのコピーを変更するよう、受信者シャードに通知します。コーディネーターは、すべての受信者が oplog エントリの適用を完了させるのを待機します。
5
blocking-writes
リシャーディング コーディネーターは、コレクションへの新たな受信書込み (write) 操作がリシャーディングされないよう、ドナー シャードに通知します。その後、コーディネーターはすべての受信者がすべてのデータ変更を完了させるのを待機します。
6
aborting
リシャーディング操作中に回復不能なエラーが発生したか、abortReshardCollection コマンド(またはsh.abortReshardCollection()メソッド)が実行されました。
6
committing
リシャーディング コーディネーターは、一時的なリシャーディングコレクションの config.collections エントリを削除します。次に、コーディネーターは recipientFields をソース コレクションのエントリに追加します。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.resharding.opStatus

現在のリシャーディング操作のステータス

返された数値
説明
-1
リシャーディング操作は進行中ではありません。
0
リシャーディング操作が成功しました。
1
リシャーディング操作が失敗しました。
2
リシャーディング操作がキャンセルされました。

シャードまたはコンフィギュレーションサーバーで実行された場合にのみ存在します。

バージョン 5.0 で追加

shardingStatistics.resharding.lastOpEndingChunkImbalance

このフィールドには、最新のリシャーディング操作により処理されたコレクションのすべてのゾーンの中で(maxNumChunksInShard - minNumChunksInShard)に関する最大の数値差が含まれます。

範囲サイズを参照。

コンフィギュレーションサーバーでのみアップデートされます。

バージョン 5.0 で追加

shardedIndexConsistency : {
numShardedCollectionsWithInconsistentIndexes : Long("<num>")
},
shardedIndexConsistency

コンフィギュレーションサーバーのインスタンスでのみ使用できます。

シャーディングされたコレクションに対するインデックス整合性チェックの結果を返すドキュメント。

返されるメトリクスは、シャーディングされたクラスターのコンフィギュレーションサーバー レプリカセットのプライマリで実行された場合にのみ意味があります。

Tip

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

shardedIndexConsistency.numShardedCollectionsWithInconsistentIndexes

コンフィギュレーションサーバーのインスタンスでのみ使用できます。

シャード間でインデックスが一致しないシャーディングされたコレクションの数。コレクションのチャンクを含む各シャードに完全に一致するインデックス(インデックスオプションを含む)が存在しない場合、シャーディングされたコレクションにはインデックスの一貫性がありません。

シャーディングされたコレクションに一貫性のないインデックスがあるかを調べるには、「シャード間で一貫性のないインデックスを検索する」を参照してください。

返されるメトリクスは、シャーディングされたクラスターのコンフィギュレーションサーバー レプリカセットのプライマリで実行された場合にのみ意味があります。

Tip

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

storageEngine : {
name : <string>,
supportsCommittedReads : <boolean>,
persistent : <boolean>
},
storageEngine

現在の Storage Engine に関するデータを含むドキュメントです。

storageEngine.name

現在の Storage Engine の名前。

storageEngine.supportsCommittedReads

Storage Engine が "majority" 読み取り保証 (read concern) をサポートしているかを示すブール値。

storageEngine.persistent

Storage Engine がディスクにデータを保持しているかを示すブール値。

transactions : {
retriedCommandsCount : Long("<num>"),
retriedStatementsCount : Long("<num>"),
transactionsCollectionWriteCount : Long("<num>"),
currentActive : Long("<num>"),
currentInactive : Long("<num>"),
currentOpen : Long("<num>"),
totalAborted : Long("<num>"),
totalCommitted : Long("<num>"),
totalStarted : Long("<num>"),
totalPrepared : Long("<num>"),
totalPreparedThenCommitted : Long("<num>"),
totalPreparedThenAborted : Long("<num>"),
currentPrepared : Long("<num>"),
lastCommittedTransaction : <document>
},
transactions : {
currentOpen : Long("<num>"),
currentActive : Long("<num>"),
currentInactive : Long("<num>"),
totalStarted : Long("<num>"),
totalCommitted : Long("<num>"),
totalAborted : Long("<num>"),
abortCause : {
<String1> : Long("<num>"),
<String2> : Long("<num>"),
...
},
totalContactedParticipants : Long("<num>"),
totalParticipantsAtCommit : Long("<num>"),
totalRequestsTargeted : Long("<num>"),
commitTypes : {
noShards : {
initiated : Long("<num>"),
successful : Long("<num>"),
successfulDurationMicros : Long("<num>")
},
singleShard : {
initiated : Long("<num>"),
successful : Long("<num>"),
successfulDurationMicros : Long("<num>")
},
singleWriteShard : {
initiated : Long("<num>"),
successful : Long("<num>"),
successfulDurationMicros : Long("<num>")
},
readOnly : {
initiated : Long("<num>"),
successful : Long("<num>"),
successfulDurationMicros : Long("<num>")
},
twoPhaseCommit : {
initiated : Long("<num>"),
successful : Long("<num>"),
successfulDurationMicros : Long("<num>")
},
recoverWithToken : {
initiated : Long("<num>"),
successful : Long("<num>"),
successfulDurationMicros : Long("<num>")
}
}
},
transactions

mongod で実行した場合の、再試行可能な書き込みトランザクションに関するデータを含むドキュメントです。

mongos で実行した場合の、インスタンスで実行されたトランザクションに関するデータを含むドキュメントです。

transactions.retriedCommandsCount

mongod でのみ利用可能です。

対応する再試行可能な書き込みコマンドがすでにコミットされた後に受信した再試行の合計回数。これは、以前に書き込みが成功し、config.transactions コレクションにトランザクションとセッションに関連するレコードが存在していても、クライアントへの最初の書込み (write) 応答が失われた場合などでは、再試行可能な書き込みが試行されるということです。

注意

MongoDB はコミットされた書込み (write) を再実行しません。

合計は全セッションにわたるものです。

合計には、チャンク移行の一環として内部で発生しうる、再試行可能な書き込みは含まれていません。

transactions.retriedStatementsCount

mongod でのみ利用可能です。

transactions.retriedCommandsCount 内の再試行されたコマンドに関連付けられた書き込みステートメントの合計数。

注意

MongoDB はコミットされた書込み (write) を再実行しません。

合計には、チャンク移行の一環として内部で発生しうる、再試行可能な書き込みは含まれていません。

transactions.transactionsCollectionWriteCount

mongod でのみ利用可能です。

新しい再試行可能な書き込みステートメントがコミットされるとトリガーされる、 config.transactions コレクションへの書込み (write) の合計数。

アップデート コマンドと削除コマンドでは、1 つのドキュメント操作がのみが再試行可能なため、1 ステートメントにつき 1 回の書込み (write) が必要です。

挿入操作では、失敗により各ドキュメントが個別に挿入される場合を除いて、挿入されたドキュメントのバッチごとに 1 回の書込み (write) が行われます。

合計には、移行の一環として発生する、サーバーの config.transactions コレクションへの書込み (write) が含まれます。

transactions.currentActive

mongod と mongos の両方で利用できます。

現在コマンドを実行しているオープン トランザクションの合計数です。

transactions.currentInactive

mongod と mongos の両方で利用できます。

現在コマンドを実行していないオープン トランザクションの合計数です。

transactions.currentOpen

mongod と mongos の両方で利用できます。

オープン トランザクションの合計数。トランザクションは、トランザクションの一部として最初のコマンドが実行されたときに開かれ、トランザクションがコミットまたは中止されるまで開いたままになります。

transactions.totalAborted

mongod において、このインスタンスが最後に起動して以降にインスタンスで中止されたトランザクションの合計数

mongos において、このインスタンスが最後に起動して以降にインスタンスを通じて中止されたトランザクションの合計数です。

transactions.totalCommitted

mongod において、このインスタンスが最後に起動して以降にインスタンスでコミットされたトランザクションの合計数です。

mongosにおいて、このインスタンスが最後に起動して以降にインスタンスを通じてコミットされたトランザクションの合計数。

transactions.totalStarted

mongodにおいて、このインスタンスが最後に起動して以降にインスタンスで開始されたトランザクションの合計数。

mongosにおいて、このインスタンスが最後に起動して以降にインスタンスで開始されたトランザクションの合計数。

transactions.abortCause

mongos でのみ利用可能です。

transactions.totalAborted の原因別の内訳。クライアントが明示的に abortTransaction を報告した場合、原因は abort としてリストされます。

以下に例を挙げます。

totalAborted : Long("5"),
abortCause : {
abort : Long("1"),
DuplicateKey : Long("1"),
StaleConfig : Long("3"),
SnapshotTooOld : Long("1")
},
transactions.totalContactedParticipants

mongos でのみ利用可能です。

最後に起動して以降、この mongos を通じて開始されたすべてのトランザクションに対して接続したシャードの合計数です。

トランザクション プロセス中に接続するシャードの数には、コミットの一部として含まれないシャードを含む場合があります。

transactions.totalParticipantsAtCommit

mongos でのみ利用可能です。

最後に起動して以降、この mongos を通じて開始されたすべてのトランザクションに対してコミットに関係したシャードの合計数。

transactions.totalRequestsTargeted

mongos でのみ利用可能です。

トランザクションの一部として mongos が対象とするネットワーク リクエストの合計数。

transactions.commitTypes

mongos でのみ利用可能です。

タイプ別のコミットの内訳の例

noShards : {
initiated : Long("0"),
successful : Long("0"),
successfulDurationMicros : Long("0")
},
singleShard : {
initiated : Long("5"),
successful : Long("5"),
successfulDurationMicros : Long("203118")
},
singleWriteShard : {
initiated : Long("0"),
successful : Long("0"),
successfulDurationMicros : Long("0")
},
readOnly : {
initiated : Long("0"),
successful : Long("0"),
successfulDurationMicros : Long("0")
},
twoPhaseCommit : {
initiated : Long("1"),
successful : Long("1"),
successfulDurationMicros : Long("179616")
},
recoverWithToken : {
initiated : Long("0"),
successful : Long("0"),
successfulDurationMicros : Long("0")
}

コミットのタイプは次のとおりです。

タイプ
説明
noShards
どのシャードにも接続しなかったトランザクションのコミット。
singleShard
単一のシャードに関与したトランザクションのコミット。
singleWriteShard
複数のシャードにアクセスしたが、単一のシャードにのみ書込み (write) 操作が作用したトランザクションのコミット。
readOnly
読み取り操作のみを含むトランザクションのコミット。
twoPhaseCommit
複数のシャードに対する書込み (write) を含むトランザクションのコミット
recoverWithToken
別のインスタンスから、またはこのインスタンスが再起動された後にトランザクションの結果を回復したコミット。

コミットのタイプごとに、コマンドは次のメトリクスを返します。

メトリクス
説明
initiated
このタイプのコミットが開始された合計回数。
successful
このタイプのコミットが成功した合計回数。
successfulDurationMicros
このタイプのコミットが成功した際にかかった時間の合計(マイクロ秒単位)です。
transactions.totalPrepared

mongod でのみ利用可能です。

mongod プロセスが最後に起動して以降、このサーバー上で準備状態にあったトランザクションの合計数です。

transactions.totalPreparedThenCommitted

mongod でのみ利用可能です。

mongodプロセスが最後に起動して以降、このサーバー上で準備されコミットされたトランザクションの合計数です。

transactions.totalPreparedThenAborted

mongod でのみ利用可能です。

mongodプロセスが最後に起動して以降、このサーバー上で準備および中止されたトランザクションの合計数です。

transactions.currentPrepared

mongod でのみ利用可能です。

このサーバー上で準備状態にある現在のトランザクション数。

transactions.lastCommittedTransaction

mongod でのみ利用可能です。

mongod がプライマリのときにコミットされた最後のトランザクションの詳細。

セカンダリから返された場合、lastCommittedTransaction は、そのセカンダリがプライマリであったときにコミットされた最後のトランザクションの詳細を返します。

lastCommittedTransaction : {
operationCount : Long("1"),
oplogOperationBytes : Long("211"),
writeConcern : {
w : "majority",
wtimeout : 0
}
}
メトリクス
説明
operationCount
トランザクション内の書込み (write) 操作の数
oplogOperationBytes
トランザクションに対応する oplog エントリ(1 つまたは複数)のサイズ。[2]
writeConcern
トランザクションに使用された書込み保証 (write concern) です。
[2] MongoDB では、トランザクションにおけるすべての書き込み操作のカプセル化に必要な数の oplog エントリが作成されます。詳細については、「Oplog のサイズ制限」を参照してください。
transportSecurity : {
1.0 : Long("<num>"),
1.1 : Long("<num>"),
1.2 : Long("<num>"),
1.3 : Long("<num>"),
unknown : Long("<num>")
},
transportSecurity.<version>

この mongod または mongos インスタンスに対して行われた TLS <version> 接続の累計数です。値は再起動時にリセットされます。

watchdog : {
checkGeneration : Long("<num>"),
monitorGeneration : Long("<num>"),
monitorPeriod : <num>
}

注意

watchdog セクションは、Storage Node Watchdog が有効な場合にのみ存在します。

watchdog

Storage Node Watchdog のステータスを報告するドキュメント。

watchdog.checkGeneration

起動以降にディレクトリがチェックされた回数です。ディレクトリは monitoringPeriod ごとに複数回チェックされます。

watchdog.monitorGeneration

mongod が使用するすべてのファイルシステムのステータスが検査された回数。この数値は monitoringPeriod ごとに増加します。

watchdog.monitorPeriod

watchdogPeriodSecondsによって設定された値です。これは、ステータス チェックの間隔を示します。

wiredTigerWiredTiger Storage Engine を使用している場合にのみ情報は表示されます。統計の一部は、サーバーに対してロールアップされます。

{
uri : 'statistics:',
async : {
current work queue length : <num>,
maximum work queue length : <num>,
number of allocation state races : <num>,
number of flush calls : <num>,
number of operation slots viewed for allocation : <num>,
number of times operation allocation failed : <num>,
number of times worker found no work : <num>,
total allocations : <num>,
total compact calls : <num>,
total insert calls : <num>,
total remove calls : <num>,
total search calls : <num>,
total update calls : <num>
},
block-manager : {
blocks pre-loaded : <num>,
blocks read : <num>,
blocks written : <num>,
bytes read : <num>,
bytes written : <num>,
bytes written for checkpoint : <num>,
mapped blocks read : <num>,
mapped bytes read : <num>
},
cache : {
application threads page read from disk to cache count : <num>,
application threads page read from disk to cache time (usecs) : <num>,
application threads page write from cache to disk count : <num>,
application threads page write from cache to disk time (usecs) : <num>,
bytes belonging to page images in the cache : <num>,
bytes belonging to the cache overflow table in the cache : <num>,
bytes currently in the cache : <num>,
bytes dirty in the cache cumulative : <num>,
bytes not belonging to page images in the cache : <num>,
bytes read into cache : <num>,
bytes written from cache : <num>,
cache overflow cursor application thread wait time (usecs) : <num>,
cache overflow cursor internal thread wait time (usecs) : <num>,
cache overflow score : <num>,
cache overflow table entries : <num>,
cache overflow table insert calls : <num>,
cache overflow table max on-disk size : <num>,
cache overflow table on-disk size : <num>,
cache overflow table remove calls : <num>,
checkpoint blocked page eviction : <num>,
eviction calls to get a page : <num>,
eviction calls to get a page found queue empty : <num>,
eviction calls to get a page found queue empty after locking : <num>,
eviction currently operating in aggressive mode : <num>,
eviction empty score : <num>,
eviction passes of a file : <num>,
eviction server candidate queue empty when topping up : <num>,
eviction server candidate queue not empty when topping up : <num>,
eviction server evicting pages : <num>,
eviction server slept, because we did not make progress with eviction : <num>,
eviction server unable to reach eviction goal : <num>,
eviction server waiting for a leaf page : <num>,
eviction server waiting for an internal page sleep (usec) : <num>,
eviction server waiting for an internal page yields : <num>,
eviction state : <num>,
eviction walk target pages histogram - 0-9 : <num>,
eviction walk target pages histogram - 10-31 : <num>,
eviction walk target pages histogram - 128 and higher : <num>,
eviction walk target pages histogram - 32-63 : <num>,
eviction walk target pages histogram - 64-128 : <num>,
eviction walks abandoned : <num>,
eviction walks gave up because they restarted their walk twice : <num>,
eviction walks gave up because they saw too many pages and found no candidates : <num>,
eviction walks gave up because they saw too many pages and found too few candidates : <num>,
eviction walks reached end of tree : <num>,
eviction walks started from root of tree : <num>,
eviction walks started from saved location in tree : <num>,
eviction worker thread active : <num>,
eviction worker thread created : <num>,
eviction worker thread evicting pages : <num>,
eviction worker thread removed : <num>,
eviction worker thread stable number : <num>,
files with active eviction walks : <num>,
files with new eviction walks started : <num>,
force re-tuning of eviction workers once in a while : <num>,
forced eviction - pages evicted that were clean count : <num>,
forced eviction - pages evicted that were clean time (usecs) : <num>,
forced eviction - pages evicted that were dirty count : <num>,
forced eviction - pages evicted that were dirty time (usecs) : <num>,
forced eviction - pages selected because of too many deleted items count : <num>,
forced eviction - pages selected count : <num>,
forced eviction - pages selected unable to be evicted count : <num>,
forced eviction - pages selected unable to be evicted time : <num>,
hazard pointer blocked page eviction : <num>,
hazard pointer check calls : <num>,
hazard pointer check entries walked : <num>,
hazard pointer maximum array length : <num>,
in-memory page passed criteria to be split : <num>,
in-memory page splits : <num>,
internal pages evicted : <num>,
internal pages split during eviction : <num>,
leaf pages split during eviction : <num>,
maximum bytes configured : <num>,
maximum page size at eviction : <num>,
modified pages evicted : <num>,
modified pages evicted by application threads : <num>,
operations timed out waiting for space in cache : <num>,
overflow pages read into cache : <num>,
page split during eviction deepened the tree : <num>,
page written requiring cache overflow records : <num>,
pages currently held in the cache : <num>,
pages evicted by application threads : <num>,
pages queued for eviction : <num>,
pages queued for eviction post lru sorting : <num>,
pages queued for urgent eviction : <num>,
pages queued for urgent eviction during walk : <num>,
pages read into cache : <num>,
pages read into cache after truncate : <num>,
pages read into cache after truncate in prepare state : <num>,
pages read into cache requiring cache overflow entries : <num>,
pages read into cache requiring cache overflow for checkpoint : <num>,
pages read into cache skipping older cache overflow entries : <num>,
pages read into cache with skipped cache overflow entries needed later : <num>,
pages read into cache with skipped cache overflow entries needed later by checkpoint : <num>,
pages requested from the cache : <num>,
pages seen by eviction walk : <num>,
pages selected for eviction unable to be evicted : <num>,
pages walked for eviction : <num>,
pages written from cache : <num>,
pages written requiring in-memory restoration : <num>,
percentage overhead : <num>,
tracked bytes belonging to internal pages in the cache : <num>,
tracked bytes belonging to leaf pages in the cache : <num>,
tracked dirty bytes in the cache : <num>,
tracked dirty pages in the cache : <num>,
unmodified pages evicted : <num>
},
capacity : {
background fsync file handles considered : <num>,
background fsync file handles synced : <num>,
background fsync time (msecs) : <num>,
bytes read : <num>,
bytes written for checkpoint : <num>,
bytes written for eviction : <num>,
bytes written for log : <num>,
bytes written total : <num>,
threshold to call fsync : <num>,
time waiting due to total capacity (usecs) : <num>,
time waiting during checkpoint (usecs) : <num>,
time waiting during eviction (usecs) : <num>,
time waiting during logging (usecs) : <num>,
time waiting during read (usecs) : <num>
},
connection : {
auto adjusting condition resets : <num>,
auto adjusting condition wait calls : <num>,
detected system time went backwards : <num>,
files currently open : <num>,
memory allocations : <num>,
memory frees : <num>,
memory re-allocations : <num>,
pthread mutex condition wait calls : <num>,
pthread mutex shared lock read-lock calls : <num>,
pthread mutex shared lock write-lock calls : <num>,
total fsync I/Os : <num>,
total read I/Os : <num>,
total write I/Os : <num>
},
cursor : {
cached cursor count : <num>,
cursor bulk loaded cursor insert calls : <num>,
cursor close calls that result in cache : <num>,
cursor create calls : <num>,
cursor insert calls : <num>,
cursor insert key and value bytes : <num>,
cursor modify calls : <num>,
cursor modify key and value bytes affected : <num>,
cursor modify value bytes modified : <num>,
cursor next calls : <num>,
cursor operation restarted : <num>,
cursor prev calls : <num>,
cursor remove calls : <num>,
cursor remove key bytes removed : <num>,
cursor reserve calls : <num>,
cursor reset calls : <num>,
cursor search calls : <num>,
cursor search near calls : <num>,
cursor sweep buckets : <num>,
cursor sweep cursors closed : <num>,
cursor sweep cursors examined : <num>,
cursor sweeps : <num>,
cursor truncate calls : <num>,
cursor update calls : <num>,
cursor update key and value bytes : <num>,
cursor update value size change : <num>,
cursors reused from cache : <num>,
open cursor count : <num>
},
data-handle : {
connection data handle size : <num>,
connection data handles currently active : <num>,
connection sweep candidate became referenced : <num>,
connection sweep dhandles closed : <num>,
connection sweep dhandles removed from hash list : <num>,
connection sweep time-of-death sets : <num>,
connection sweeps : <num>,
session dhandles swept : <num>,
session sweep attempts : <num>
},
lock : {
checkpoint lock acquisitions : <num>,
checkpoint lock application thread wait time (usecs) : <num>,
checkpoint lock internal thread wait time (usecs) : <num>,
dhandle lock application thread time waiting (usecs) : <num>,
dhandle lock internal thread time waiting (usecs) : <num>,
dhandle read lock acquisitions : <num>,
dhandle write lock acquisitions : <num>,
durable timestamp queue lock application thread time waiting (usecs) : <num>,
durable timestamp queue lock internal thread time waiting (usecs) : <num>,
durable timestamp queue read lock acquisitions : <num>,
durable timestamp queue write lock acquisitions : <num>,
metadata lock acquisitions : <num>,
metadata lock application thread wait time (usecs) : <num>,
metadata lock internal thread wait time (usecs) : <num>,
read timestamp queue lock application thread time waiting (usecs) : <num>,
read timestamp queue lock internal thread time waiting (usecs) : <num>,
read timestamp queue read lock acquisitions : <num>,
read timestamp queue write lock acquisitions : <num>,
schema lock acquisitions : <num>,
schema lock application thread wait time (usecs) : <num>,
schema lock internal thread wait time (usecs) : <num>,
table lock application thread time waiting for the table lock (usecs) : <num>,
table lock internal thread time waiting for the table lock (usecs) : <num>,
table read lock acquisitions : <num>,
table write lock acquisitions : <num>,
txn global lock application thread time waiting (usecs) : <num>,
txn global lock internal thread time waiting (usecs) : <num>,
txn global read lock acquisitions : <num>,
txn global write lock acquisitions : <num>
},
log : {
busy returns attempting to switch slots : <num>,
force archive time sleeping (usecs) : <num>,
log bytes of payload data : <num>,
log bytes written : <num>,
log files manually zero-filled : <num>,
log flush operations : <num>,
log force write operations : <num>,
log force write operations skipped : <num>,
log records compressed : <num>,
log records not compressed : <num>,
log records too small to compress : <num>,
log release advances write LSN : <num>,
log scan operations : <num>,
log scan records requiring two reads : <num>,
log server thread advances write LSN : <num>,
log server thread write LSN walk skipped : <num>,
log sync operations : <num>,
log sync time duration (usecs) : <num>,
log sync_dir operations : <num>,
log sync_dir time duration (usecs) : <num>,
log write operations : <num>,
logging bytes consolidated : <num>,
maximum log file size : <num>,
number of pre-allocated log files to create : <num>,
pre-allocated log files not ready and missed : <num>,
pre-allocated log files prepared : <num>,
pre-allocated log files used : <num>,
records processed by log scan : <num>,
slot close lost race : <num>,
slot close unbuffered waits : <num>,
slot closures : <num>,
slot join atomic update races : <num>,
slot join calls atomic updates raced : <num>,
slot join calls did not yield : <num>,
slot join calls found active slot closed : <num>,
slot join calls slept : <num>,
slot join calls yielded : <num>,
slot join found active slot closed : <num>,
slot joins yield time (usecs) : <num>,
slot transitions unable to find free slot : <num>,
slot unbuffered writes : <num>,
total in-memory size of compressed records : <num>,
total log buffer size : <num>,
total size of compressed records : <num>,
written slots coalesced : <num>,
yields waiting for previous log file close : <num>
},
perf : {
file system read latency histogram (bucket 1) - 10-49ms : <num>,
file system read latency histogram (bucket 2) - 50-99ms : <num>,
file system read latency histogram (bucket 3) - 100-249ms : <num>,
file system read latency histogram (bucket 4) - 250-499ms : <num>,
file system read latency histogram (bucket 5) - 500-999ms : <num>,
file system read latency histogram (bucket 6) - 1000ms+ : <num>,
file system write latency histogram (bucket 1) - 10-49ms : <num>,
file system write latency histogram (bucket 2) - 50-99ms : <num>,
file system write latency histogram (bucket 3) - 100-249ms : <num>,
file system write latency histogram (bucket 4) - 250-499ms : <num>,
file system write latency histogram (bucket 5) - 500-999ms : <num>,
file system write latency histogram (bucket 6) - 1000ms+ : <num>,
operation read latency histogram (bucket 1) - 100-249us : <num>,
operation read latency histogram (bucket 2) - 250-499us : <num>,
operation read latency histogram (bucket 3) - 500-999us : <num>,
operation read latency histogram (bucket 4) - 1000-9999us : <num>,
operation read latency histogram (bucket 5) - 10000us+ : <num>,
operation write latency histogram (bucket 1) - 100-249us : <num>,
operation write latency histogram (bucket 2) - 250-499us : <num>,
operation write latency histogram (bucket 3) - 500-999us : <num>,
operation write latency histogram (bucket 4) - 1000-9999us : <num>,
operation write latency histogram (bucket 5) - 10000us+ : <num>
},
reconciliation : {
fast-path pages deleted : <num>,
page reconciliation calls : <num>,
page reconciliation calls for eviction : <num>,
pages deleted : <num>,
split bytes currently awaiting free : <num>,
split objects currently awaiting free : <num>
},
session : {
open session count : <num>,
session query timestamp calls : <num>,
table alter failed calls : <num>,
table alter successful calls : <num>,
table alter unchanged and skipped : <num>,
table compact failed calls : <num>,
table compact successful calls : <num>,
table create failed calls : <num>,
table create successful calls : <num>,
table drop failed calls : <num>,
table drop successful calls : <num>,
table import failed calls : <num>,
table import successful calls : <num>,
table rebalance failed calls : <num>,
table rebalance successful calls : <num>,
table rename failed calls : <num>,
table rename successful calls : <num>,
table salvage failed calls : <num>,
table salvage successful calls : <num>,
table truncate failed calls : <num>,
table truncate successful calls : <num>,
table verify failed calls : <num>,
table verify successful calls : <num>
},
thread-state : {
active filesystem fsync calls : <num>,
active filesystem read calls : <num>,
active filesystem write calls : <num>
},
thread-yield : {
application thread time evicting (usecs) : <num>,
application thread time waiting for cache (usecs) : <num>,
connection close blocked waiting for transaction state stabilization : <num>,
connection close yielded for lsm manager shutdown : <num>,
data handle lock yielded : <num>,
get reference for page index and slot time sleeping (usecs) : <num>,
log server sync yielded for log write : <num>,
page access yielded due to prepare state change : <num>,
page acquire busy blocked : <num>,
page acquire eviction blocked : <num>,
page acquire locked blocked : <num>,
page acquire read blocked : <num>,
page acquire time sleeping (usecs) : <num>,
page delete rollback time sleeping for state change (usecs) : <num>,
page reconciliation yielded due to child modification : <num>
},
transaction : {
Number of prepared updates : <num>,
Number of prepared updates added to cache overflow : <num>,
Number of prepared updates resolved : <num>,
durable timestamp queue entries walked : <num>,
durable timestamp queue insert to empty : <num>,
durable timestamp queue inserts to head : <num>,
durable timestamp queue inserts total : <num>,
durable timestamp queue length : <num>,
number of named snapshots created : <num>,
number of named snapshots dropped : <num>,
prepared transactions : <num>,
prepared transactions committed : <num>,
prepared transactions currently active : <num>,
prepared transactions rolled back : <num>,
query timestamp calls : <num>,
read timestamp queue entries walked : <num>,
read timestamp queue insert to empty : <num>,
read timestamp queue inserts to head : <num>,
read timestamp queue inserts total : <num>,
read timestamp queue length : <num>,
rollback to stable calls : <num>,
rollback to stable updates aborted : <num>,
rollback to stable updates removed from cache overflow : <num>,
set timestamp calls : <num>,
set timestamp durable calls : <num>,
set timestamp durable updates : <num>,
set timestamp oldest calls : <num>,
set timestamp oldest updates : <num>,
set timestamp stable calls : <num>,
set timestamp stable updates : <num>,
transaction begins : <num>,
transaction checkpoint currently running : <num>,
transaction checkpoint generation : <num>,
transaction checkpoint max time (msecs) : <num>,
transaction checkpoint min time (msecs) : <num>,
transaction checkpoint most recent time (msecs) : <num>,
transaction checkpoint scrub dirty target : <num>,
transaction checkpoint scrub time (msecs) : <num>,
transaction checkpoint total time (msecs) : <num>,
transaction checkpoints : <num>,
transaction checkpoints skipped because database was clean : <num>,
transaction failures due to cache overflow : <num>,
transaction fsync calls for checkpoint after allocating the transaction ID : <num>,
transaction fsync duration for checkpoint after allocating the transaction ID (usecs) : <num>,
transaction range of IDs currently pinned : <num>,
transaction range of IDs currently pinned by a checkpoint : <num>,
transaction range of IDs currently pinned by named snapshots : <num>,
transaction range of timestamps currently pinned : <num>,
transaction range of timestamps pinned by a checkpoint : <num>,
transaction range of timestamps pinned by the oldest active read timestamp : <num>,
transaction range of timestamps pinned by the oldest timestamp : <num>,
transaction read timestamp of the oldest active reader : <num>,
transaction sync calls : <num>,
transactions committed : <num>,
transactions rolled back : <num>,
update conflicts : <num>
},
concurrentTransactions : {
write : {
out : <num>,
available : <num>,
totalTickets : <num>
},
read : {
out : <num>,
available : <num>,
totalTickets : <num>
},
monitor : {
timesDecreased: <num>,
timesIncreased: <num>,
totalAmountDecreased: <num>,
totalAmountIncreased: <num>
}
},
snapshot-window-settings : {
total number of SnapshotTooOld errors : <num>,
max target available snapshots window size in seconds : <num>,
target available snapshots window size in seconds : <num>,
current available snapshots window size in seconds : <num>,
latest majority snapshot timestamp available : <string>,
oldest majority snapshot timestamp available : <string>
}
}

注意

以下はすべてを網羅するものではありません。

wiredTiger.uri

文字列。MongoDB の内部使用のためのものです。

wiredTiger.async

非同期操作 API に関連する統計を返すドキュメント。MongoDB では使用されません。

wiredTiger.block-manager

ブロック マネージャ操作の統計を返すドキュメント。

wiredTiger.cache

キャッシュとキャッシュからのページの追い出しに関する統計を返すドキュメント。

以下に、重要な wiredTiger.cache の統計をいくつか示します。

wiredTiger.cache.maximum bytes configured

最大キャッシュ サイズ。

wiredTiger.cache.bytes currently in the cache

現在キャッシュにあるデータのサイズ(バイト単位)。この値は maximum bytes configured の値より大きくすることはできません。

wiredTiger.cache.unmodified pages evicted

追い出されたページの主な統計

wiredTiger.cache.tracked dirty bytes in the cache

キャッシュ内のダーティ データのサイズ(バイト単位)。この値は bytes currently in the cache の値より小さくする必要があります。

wiredTiger.cache.pages read into cache

キャッシュに読み込まれたページの数。wiredTiger.cache.pages read into cachewiredTiger.cache.pages written from cache を組み合わせると、I/O アクティビティの概要が提供されます。

wiredTiger.cache.pages written from cache

キャッシュから書き込まれたページ数。wiredTiger.cache.pages written from cachewiredTiger.cache.pages read into cache を組み合わせると、I/O アクティビティの概要が提供されます。

WiredTiger 内部キャッシュのサイズを調整するには、 storage.wiredTiger.engineConfig.cacheSizeGB--wiredTigerCacheSizeGBを参照してください。WiredTiger の内部キャッシュ サイズをデフォルト値より大きくしないようにしてください。

wiredTiger.connection

WiredTiger 接続に関する統計を返すドキュメントです。

wiredTiger.cursor

WiredTiger カーソルの統計を返すドキュメント

wiredTiger.data-handle

データの処理とスイープに関する統計を返すドキュメント

wiredTiger.log

WiredTiger の書き込み先ログ(つまりジャーナル)の統計を返すドキュメントです。

wiredTiger.reconciliation

調整プロセスに関する統計を返すドキュメント

wiredTiger.session

セッションのオープン カーソル数とオープン セッション数を返すドキュメントです。

wiredTiger.thread-yield

ページ取得時の生成数に関する統計を返すドキュメントです。

wiredTiger.transaction

トランザクションのチェックポイントと操作に関する統計を返すドキュメントです。

wiredTiger.transaction.transaction checkpoint most recent time (msecs)

最新のチェックポイントを作成する時間(ミリ秒単位)です。安定した書込み (write) 負荷下でこの値が増加すると、I/O サブシステムが飽和状態になっている可能性があります。

wiredTiger.concurrentTransactions

バージョン 7.0 で変更

ドキュメントは以下の情報を返します。

  • WiredTiger storage engine に許可される同時読み取りトランザクション(読み取りチケット)の数です。

  • WiredTiger storage engine に許可される同時書込みトランザクション (write transaction)(書込み (write) チケット)の数

  • 許可される同時トランザクション(チケット)の数に対してシステムが行った調整。

MongoDB 固有の設定です。同時読み取りおよび書込みトランザクション (write transaction)(読み取りチケットおよび書込み (write) チケット)の設定を変更するには、storageEngineConcurrentReadTransactions および storageEngineConcurrentWriteTransactions を参照してください。

重要

バージョン 7.0 以降、MongoDB は、過負荷時のデータベース スループットを最適化するために、デフォルトのアルゴリズムを使用して、ストレージ エンジンの同時トランザクションの最大数 (読み取りチケットと書き込みチケットの両方)を動的に調整します。

次の表は、MongoDB 7.0 およびそれ以前のリリースの過負荷シナリオの特定方法をまとめたものです。

バージョン
過負荷シナリオの診断
7.0

多数の操作が長時間にわたってキューに入れられたままの場合、過負荷が発生している高い可能性があります。

storage engine のトランザクションの同時実行(チケット)の可用性が長期間にわたって 0 であっても、過負荷を示すものではありません

6.0 およびそれ以前

多数の操作が長時間にわたってキューに入れられたままの場合、過負荷が発生している高い可能性があります。

storage engine のトランザクションの同時実行(チケット)の可用性が長期間にわたって 0 の場合、過負荷を示している高い可能性があります。

writeBacksQueued : <boolean>,
writeBacksQueued

mongos インスタンスからの操作が再試行のキューに入っているかどうかを示すブール値。通常、この値は false です。writeBacks も参照してください。

戻る

プロファイル