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

serverStatus

項目一覧

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

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

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

注意

出力フィールドは、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 データ構造内の他の値にコンテキストを提供します。

bucketCatalog: {
numBuckets: <num>,
numOpenBuckets: <num>,
numIdleBuckets: <num>,
memoryUsage: <num>,
numBucketInserts: <num>,
numBucketUpdates: <num>,
numBucketsOpenedDueToMetadata: <num>,
numBucketsClosedDueToCount: <num>,
numBucketsClosedDueToSchemaChange: <num>,
numBucketsClosedDueToSize: <num>,
numBucketsClosedDueToTimeForward: <num>,
numBucketsClosedDueToTimeBackward: <num>,
numBucketsClosedDueToMemoryThreshold: <num>,
numCommits: <num>,
numMeasurementsGroupCommitted: <num>,
numWaits: <num>,
numMeasurementsCommitted: <num>,
avgNumMeasurementsPerCommit: <num>,
numBucketsClosedDueToReopening: <num>,
numBucketsArchivedDueToMemoryThreshold: <num>,
numBucketsArchivedDueToTimeBackward: <num>,
numBucketsReopened: <num>,
numBucketsKeptOpenDueToLargeMeasurements: <num>,
numBucketsClosedDueToCachePressure: <num>,
numBucketsFrozen: <num>,
numCompressedBucketsConvertedToUnsorted: <num>,
numBucketsFetched: <num>,
numBucketsQueried: <num>,
numBucketFetchesFailed: <num>,
numBucketQueriesFailed: <num>,
numBucketReopeningsFailed: <num>,
numDuplicateBucketsReopened: <num>,
stateManagement: {
bucketsManaged: <num>,
currentEra: <num>,
erasWithRemainingBuckets: <num>,
trackedClearOperations: <num>
}
}

バージョン 5.0 で追加

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

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

メトリクス
説明

numBuckets

追跡対象バケットの合計数。numOpenBucketsnumArchivedBuckets の合計と等しくなることが想定されています。

numOpenBuckets

完全な表現がキャッシュ内に保存され、新しいドキュメントを受信する準備ができている追跡対象バケットの数。

numIdleBuckets

現在開いており、未コミットのドキュメント挿入が保留されていないバケットの数。numOpenBbuckets のサブセットです。

numArchivedBuckets

効率的に新しいドキュメントを受け取るために再度開くことができる、最低限の表現がキャッシュに保存されている追跡対象バケットの数。

memoryUsage

内部バケットデータ構造によって使用されるバイト数。

numBucketInserts

作成された新しいバケットの数。

numBucketUpdates

追加のドキュメントを含めるために既存のバケットが更新された回数。

numBucketsOpenedDueToMetadata

metaField の値が、現在開いているバケットと一致しないドキュメントが到着したために開いているバケットの数。

numBucketsClosedDueToCount

ドキュメント数の制限に達したために閉じられたバケットの数。

numBucketsClosedDueToSchemaChange

受信ドキュメントのスキーマが、開いているバケット内のドキュメントのスキーマと互換性がなかったために閉じられたバケットの数。

numBucketsClosedDueToSize

受信ドキュメントによってバケットがサイズ制限を超えるために閉じられたバケットの数。

numBucketsClosedDueToTimeForward

現在開いているすべてのバケットのうち、その metaField 値の最大時間が経過した後に timeField 値のドキュメントが届いたため、閉じられたバケットの数。

numBucketsClosedDueToTimeBackward

現在開いているすべてのバケットのうち、その metaField 値の最小時間より前に timeField 値のドキュメントが届いたため、閉じられたバケットの数。

numBucketsClosedDueToMemoryThreshold

アクティブなバケットのセットがバケット カタログの許容キャッシュサイズに収まらなかったために閉じられたバケットの数。

numCommits

時系列コレクションへのバケットレベルのコミットの数。

numMeasurementsGroupCommitted

同時挿入コマンドによる測定値を含むコミットの数。

numWaits

バケットを再オープンしたか、グループコミットを終了したために、操作が他のスレッドで待機した回数。

numMeasurementsCommitted

時系列コレクションにコミットされたドキュメントの数。

avgNumMeasurementsPerCommit

コミットあたりのドキュメントの平均数。

numBucketsClosedDueToReopening

代わりに適切なバケットが再度開かれたため、閉じられたバケットの数。

numBucketsArchivedDueToMemoryThreshold

アクティブなバケットのセットがバケット カタログの許容キャッシュサイズに収まらなかったためにアーカイブされたバケットの数。

numBucketsArchivedDueToTimeBackward

現在開いているすべてのバケットのうち、その metaField 値の最小時間より前に timeField 値の付いたドキュメントが届いたため、アーカイブされたバケットの数。

numBucketsReopened

届いたドキュメントが開いているバケットのどれにも一致しないが、既存の満杯ではないバケットと一致したため、再度開かれたバケットの数。

numBucketsKeptOpenDueToLargeMeasurements

サイズが適切なら閉じられていたが、適度な圧縮に必要な最低限の数のドキュメントが入っていなかったために開いたままになっているバケットの数。

numBucketsClosedDueToCachePressure

サイズが使用可能なストレージエンジンのキャッシュサイズと numBuckets から導き出されたバケット カタログの動的バケット サイズ制限を超えているために閉じられたバケットの数。この制限は、バケット サイズの上限とは異なります。

numBucketsFrozen

凍結されたバケットの数。バケットを圧縮しようとするとコンテンツが破損する場合、バケットは凍結されます。

numCompressedBucketsConvertedToUnsorted

それぞれの timeField 値でソートされていないドキュメントを含む圧縮バケットの数。

numBucketsFetched

再度開くことが適切かどうかを確認するために取得されたアーカイブ済みバケットの数。

numBucketsQueried

受信ドキュメントを保持できるかどうかを確認するためにクエリされたバケットの合計数。

numBucketFetchesFailed

再度開くことが適切ではなかった、取得されたアーカイブ済みバケットの数。

numBucketQueriesFailed

開くことが適切であったが、候補が利用できなかったために開けなかったバケツへのクエリ数。

numBucketReopeningsFailed

同時操作との競合、バケットの形式が不正などの理由で、バケット再度開くよう試行して失敗した回数。

numDuplicateBucketsReopened

現在開いているバケツの複製である、再度開いたバケットの数。

stateManagement

バケット カタログの状態情報を追跡するドキュメント。

stateManagement.bucketsManaged

競合管理のために追跡されているバケットの合計数。これには、バケット カタログで開いているバケットだけでなく、更新コマンドや削除コマンドなどによって直接書き込まれているバケットも含まれます。

stateManagement.currentEra

バケットカタログの現在の時代。バケット カタログは時代 0 から始まり、バケットがクリアされると増加します。バケットに挿入しようとすると、バケツがクリアされている場合は削除され、そうでない場合は現在の時代に更新されます。

stateManagement.erasWithRemainingBuckets

追跡対象バケットの時代の数。

stateManagement.trackedClearOperations

バケツのセットがクリアされたが、それらのバケツの削除が延期された回数。これは、コレクションの削除、シャーディングされたコレクション内のチャンクの移動、または選挙などのイベントが原因で発生する可能性があります。

バージョン 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 の各データベース上のコレクション)の合計ビュー数。

バージョン 5.0 で追加

changeStreamPreImages : {
purgingJob : {
totalPass : <num>,
docsDeleted : <num>,
bytesDeleted : <num>,
scannedCollections : <num>,
scannedInternalCollections : <num>,
maxStartWallTimeMillis : <num>,
timeElapsedMillis : <num>,
},
expireAfterSeconds : <num>
}

変更ストリームの変更前のイメージに関連するメトリクスを報告するドキュメント。

changeStreamPreImages.purgingJob

バージョン 7.1 で追加

変更ストリームの変更前のイメージの消去ジョブに関連するメトリクスを報告するドキュメント。消去ジョブは、システムが変更前のイメージを非同期に削除するために使用するバックグラウンド プロセスです。

changeStreamPreImages.purgingJobフィールドは次のメトリクスを返します。

メトリクス
説明

totalPass

パーディング ジョブによって完了した削除パスの合計数。

docsDeleted

消去ジョブによって削除された、イメージ前ドキュメントの累計数。

bytesDeleted

消去ジョブによって、すべての変更前のイメージ コレクションから削除されたすべてのドキュメントの累積サイズ(バイト単位)。

scannedCollections

消去ジョブによってスキャンされた、変更前のイメージ コレクションの累計数。

シングルテナント環境では、各テナントに変更前のイメージ コレクションがあるため、この数はtotalPassと同じになります。

scannedInternalCollections

消去ジョブによってスキャンされた内部変更前イメージ コレクションの累計数。 内部コレクションは、 config.system.preimagesに保存されている変更前のイメージ コレクション内のコレクションです。

maxStartWallTimeMillis

各イメージ前コレクションの最初のドキュメントからの最大ウォール時間(ミリ秒単位)。

timeElapsedMillis

パーディング ジョブによるすべての削除の累計時間(ミリ秒単位)。

changeStreamPreImages.expireAfterSeconds

バージョン 7.1 で追加

MongoDB が変更前のイメージを保持する時間(秒単位)。 expireAfterSecondsが定義されていない場合、このメトリクスはserverStatusの出力に表示されません。

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)操作を実行しているアクティブなクライアント接続数。

重要

MongoDB 8.0以降、ヘッジされた読み取りは非推奨です。 読み込み設定(read preference nearestを指定するクエリは、デフォルトでヘッジされた読み取りを使用しなくなりました。 ヘッジされた読み取りを明示的に指定すると、MongoDB はヘッジされた読み取りを実行し、警告をログに記録します。

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>,
killedDueToInsufficientDiskSpace : <num>,
failedDueToDataCorruption : <num>
},
indexBuilds

サーバーが最後に起動して以降のインデックス構築に関するメトリクスを提供します。

indexBuilds.total

インデックス ビルドの合計数。

indexBuilds.killedDueToInsufficientDiskSpace

ディスク容量が不足していて終了したインデックスビルドの総数。 MongoDB 7.1 以降では、 indexBuildMinAvailableDiskSpaceMBパラメーターを使用して、インデックスの構築に必要なディスク領域の最小量を設定できます。

バージョン 7.1 で追加

indexBuilds.failedDueToDataCorruption

データの破損が原因で失敗したインデックスビルドの総数。

バージョン 7.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>") },
prepareUnique: { count: Long("<num>"), accesses: Long("<num>") }, // Added in 8.0.4 (and 7.0.14)
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'>,
service : <'router'|'shard'>,
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 です。

service

現在の MongoDB プロセスのロール。可能な値は router または shard です。

バージョン8.0の新機能

pid

プロセス ID 番号。

uptime

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

uptimeMillis

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

uptimeEstimate

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

localTime

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

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

メタデータ ロックを表します。

DDLDatabase

DDLデータベース ロックを表します。

バージョン 7.1 で追加

DDLCollection

DDLコレクション ロックを表します。

バージョン 7.1 で追加

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 : {
abortExpiredTransactions: {
passes: <integer>
},
apiVersions: {
<appName1>: <string>,
<appName2>: <string>,
<appName3>: <string>
},
aggStageCounters : {
<aggregation stage> : Long("<num>")
},
changeStreams: {
largeEventsFailed: Long("<num>"),
largeEventsSplit: Long("<num>"),
showExpandedEvents: Long("<num>")
},
commands: {
<command>: {
failed: Long("<num>"),
validator: {
total: Long("<num>"),
failed: Long("<num>"),
jsonSchema: Long("<num>")
},
total: Long("<num>"),
rejected: 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
killedDueToDefaultMaxTimeMSExpired : Long("<num>"),
killedDueToMaxTimeMSExpired : Long("<num>"), // Added in MongoDB 7.2
numConnectionNetworkTimeouts : Long("<num>"), // Added in MongoDB 6.3
scanAndOrder : Long("<num>"),
totalTimeWaitingBeforeConnectionTimeoutMillis : Long("<num>"), // Added in MongoDB 6.3
unsendableCompletedResponses : Long("<num>"), // Added in MongoDB 7.1
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>"),
batchSize: <num>,
batches : {
num : <num>,
totalMillis : <num>
},
ops : Long("<num>")
},
write : {
batchSize: <num>,
batches : {
num : <num>,
totalMillis : <num>
}
},
buffer : {
write: {
count : Long("<num>"),
maxSizeBytes : Long("<num>"),
sizeBytes : Long("<num>")
},
apply: {
count : Long("<num>"),
sizeBytes : Long("<num>"),
maxSizeBytes : Long("<num>"),
maxCount: 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>,
totalOperationsKilled : Long("<num>"),
totalOperationsRunning : 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.abortExpiredTransactions

abortExpiredTransactionsスレッドの現在の状態に関する統計を返すドキュメント

metrics.abortExpiredTransactions.passes

transactionLifetimeLimitSecondsパラメータよりも古いトランザクションを中止する成功したパスの数を示します。

passes値の増加が停止する場合、 abortExpiredTransactionsスレッドが停止している可能性があることを示します。

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.largeEventsSplit

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

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

metrics.changeStreams

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

バージョン 7.0 で追加

metrics.changeStreams.largeEventsFailed

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

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

metrics.changeStreams.showExpandedEvents

showExpandedEventsオプションがtrueに設定されている変更ストリーム カーソルの数。

次の場合、 showExpandedEventsのカウンターは増加します。

  • 変更ストリーム カーソルを開きます。

  • 変更ストリーム カーソルでexplainコマンドを実行します。

バージョン 7.1 で追加

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.<command>.rejected

reject フィールドが true である関連するクエリ設定がコマンドまたは操作にあるため、この mongod<command> が拒否された回数。

reject フィールドを設定するには、setQuerySettings を使用します。

バージョン8.0の新機能

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 で追加

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

metrics.operation.killedDueToDefaultMaxTimeMSExpired

バージョン8.0の新機能

クラスターレベルのデフォルトのタイムアウトが原因でタイムアウトした操作の総数: defaultMaxTimeMS

metrics.operation.killedDueToMaxTimeMSExpired

バージョン 7.2 で追加

操作レベルのタイムアウトによってタイムアウトした操作の合計数: cursor.maxTimeMS()

metrics.operation.numConnectionNetworkTimeouts

バージョン 6.3 で追加

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

metrics.operation.scanAndOrder

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

metrics.operation.totalTimeWaitingBeforeConnectionTimeoutMillis

バージョン 6.3 で追加

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

metrics.operation.unsendableCompletedResponses

バージョン 7.1 で追加

サーバー側で完了したが、クライアントとサーバー間の接続が失敗または切断されたため、クライアントに応答を送信しなかった操作の合計数。

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.write

oplog に書き込まれたエントリについて報告するドキュメント。

バージョン8.0の新機能

metrics.repl.write.batchSize

oplog に書き込まれたエントリの合計数。このメトリクスは、メンバーが oplog へのバッチの書き込みを完了すると、各バッチのエントリ数で更新されます。

バージョン8.0の新機能

metrics.repl.write.batches

セカンダリメンバー用 oplog 書き込みプロセスを報告するドキュメント。

バージョン8.0の新機能

metrics.repl.write.batches.num

すべてのデータベースに書き込まれたバッチの合計数。

バージョン8.0の新機能

metrics.repl.write.batches.totalMillis

メンバーが oplog へのエントリの書き込みに費やした合計時間(ミリ秒単位)。

バージョン8.0の新機能

metrics.repl.buffer

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

バージョン8.0で変更

MongoDB 8.0 以降、セカンダリがローカル oplog を更新し、データベースへの変更を並行して適用するようになりました。MongoDB は oplog エントリのバッチごとに2つのバッファを使用します。

  • write バッファはプライマリから新しい oplog エントリを受け取る。ライターはこれらのエントリをローカル oplog に追加し、アプライヤに送信する。

  • apply バッファはライターから新しい oplog エントリを受け取る。アプライヤーはこれらのエントリを使用して、ローカルデータベースを更新する。

これは、古い metrics.repl.buffer ステータスメトリクスを非推奨とする重大な変更です。

metrics.repl.buffer.apply

oplog 適用バッファのステータスに関する情報を提供します。

バージョン8.0の新機能

metrics.repl.buffer.apply.count

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

バージョン8.0の新機能

metrics.repl.buffer.apply.maxCount

oplog 適用バッファ内の操作の最大数。mongod は、定数を使用してこの値を設定しますが、これは構成できません。

バージョン8.0の新機能

metrics.repl.buffer.apply.maxSizeBytes

適用バッファの最大サイズ。mongod は、定数を使用してこのサイズを設定しますが、これは構成できません。

バージョン8.0の新機能

metrics.repl.buffer.apply.sizeBytes

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

バージョン8.0の新機能

metrics.repl.buffer.count

バージョン 8.0 から非推奨。

MongoDB 8.0 以降、セカンダリは別々のバッファを使用して oplog エントリの書き込みと適用を行います。oplogバッファ内の現在の操作数については、apply.count または write.count のステータスメトリクスを参照してください。

metrics.repl.buffer.maxSizeBytes

バージョン 8.0 から非推奨。

MongoDB 8.0 以降、セカンダリは別々のバッファを使用して oplog エントリの書き込みと適用を行います。バッファの最大サイズについては、apply.maxSizeBytes または write.maxSizeBytes ステータスメトリクスを参照してください。

metrics.repl.buffer.sizeBytes

バージョン 8.0 から非推奨。

MongoDB 8.0 以降、セカンダリは別々のバッファを使用して oplog エントリの書き込みと適用を行います。oplog バッファの現在のサイズについては、apply.sizeBytes または write.sizeBytes のステータスメトリクスを参照してください。

metrics.repl.buffer.write

oplog 書き込みバッファのステータスに関する情報を提供します。

バージョン8.0の新機能

metrics.repl.buffer.write.count

oplog 書き込みバッファ内の現在の操作数。

バージョン8.0の新機能

metrics.repl.buffer.write.maxSizeBytes

書き込みバッファの最大サイズ。mongod は、定数を使用してこの値を設定しますが、これは構成できません。

バージョン8.0の新機能

metrics.repl.buffer.write.sizeBytes

oplog 書き込みバッファーの内容の現在のサイズ。

バージョン8.0の新機能

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.totalOperationsKilled

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

バージョン7.3の新機能: totalOperationsKilleduserOperationsKilledに置き換えられます

metrics.repl.stateTransition.totalOperationsRunning

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

バージョン7.3の新機能: totalOperationsRunninguserOperationsRunningに置き換えられます

metrics.repl.stateTransition.userOperationsKilled

バージョン7.3以降では非推奨: totalOperationsKilleduserOperationsKilledに置き換えられます。

metrics.repl.stateTransition.userOperationsRunning

バージョン7.3以降では非推奨: totalOperationsRunninguserOperationsRunningに置き換えられます。

metrics.repl.syncSource

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

metrics.repl.syncSource.numSelections

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

metrics.repl.syncSource.numTimesChoseSame

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

metrics.repl.syncSource.numTimesChoseDifferent

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

metrics.repl.syncSource.numTimesCouldNotFind

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

metrics.repl.waiters.replication

複製された書込み保証( write concern)確認応答を待機しているスレッドの数。

バージョン7.3の新機能

metrics.repl.waiters.opTime

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

バージョン7.3の新機能

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 の出力に含めるには、次のコマンドを実行します。

db.runCommand( { serverStatus: 1, opLatencies: { histograms: true } } ).opLatencies
opLatencies.reads

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

opLatencies.writes

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

opLatencies.commands

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

opLatencies.transactions

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

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

インスタンスの操作実行に関する情報を含むドキュメント。 latencyStatsこのドキュメントの説明については、 ドキュメントを参照してください。

opWorkingTime の下のフィールドはworkingMillis で測定されます。これは MongoDB で操作にかかった時間です。つまり、ロックの待機やフロー制御などの要因は opWorkingTime に影響しません。

ヒストグラムを opWorkingTime の出力に含めるには、次のコマンドを実行します。

db.runCommand( { serverStatus: 1, opWorkingTime: { histogram: true } } ).opWorkingTime

バージョン8.0の新機能

opWorkingTime.commands

データベースコマンドの実行統計を報告するドキュメント。

バージョン8.0の新機能

opWorkingTime.reads

読み取り操作の実行統計を報告するドキュメント。

バージョン8.0の新機能

opWorkingTime.writes

書き込み操作の実行統計を報告するドキュメント。

バージョン8.0の新機能

opWorkingTime.transactions

トランザクションの実行統計を報告するドキュメント。

バージョン8.0の新機能

警告

削除

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>"),
skipped : Long("<num>")
},
sbe : {
hits : Long("<num>"),
misses: Long("<num>"),
skipped : Long("<num>")
}
}
planCache

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

planCache.totalQueryShapes

プランキャッシュクエリシェイプのおおよその数

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

バージョン 7.2 で追加

planCache.totalSizeEstimateBytes

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

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

バージョン 7.2 で追加

planCache.classic.hits

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

planCache.classic.misses

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

planCache.classic.skipped

クエリがキャッシュに適していないため、クエリ キャッシュで見つからなかった、クラシック実行エンジンのクエリプランの数です。

バージョン7.3の新機能

planCache.sbe.hits

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

planCache.sbe.misses

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

planCache.sbe.skipped

クエリがキャッシュに適していないため、クエリキャッシュに見つからなかったスロットベースの実行エンジンクエリプランの数。

バージョン7.3の新機能

バージョン 7.1 で追加

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 を実行している場合にのみ使用できます。

操作がステージを進むにつれて、現在のステージで同時に行われる操作の数が最大しきい値を超えた場合、その操作はキューに入る可能性があります。これにより、過剰なリソース競合を防ぎ、データベースの状態に対するオブザーバビリティを確保します。

バージョン8.0の新機能

queues: {
execution: {
write: {
out: Long("<num>"),
available: Long("<num>"),
totalTickets: Long("<num>"),
exempt: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
},
normalPriority: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
}
},
read: {
out: Long("<num>"),
available: Long("<num>"),
totalTickets: Long("<num>"),
exempt: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>")),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
},
normalPriority: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
}
},
monitor: {
timesDecreased: Long("<num>"),
timesIncreased: Long("<num>"),
totalAmountDecreased: Long("<num>"),
totalAmountIncreased: Long("<num>"),
resizeDurationMicros: Long("<num>")
}
},
ingress: {
out: Long("<num>"),
available: Long("<num>"),
totalTickets: Long("<num>"),
exempt: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
},
normalPriority: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
}
}
}
queues.execution

バージョン8.0の新機能

ストレージレイヤー内で実行スケジュールを待機している操作のモニタリングとキュー情報を返すドキュメント(同時トランザクション)。

MongoDB 固有の設定です。同時読み取りおよび書込みトランザクション (write transaction)(読み取りチケットおよび書込み (write) チケット)の設定を変更するには、storageEngineConcurrentReadTransactions および storageEngineConcurrentWriteTransactions を参照してください。

重要

バージョン 7.0 以降、MongoDB は、過負荷時のデータベース スループットを最適化するために、デフォルトのアルゴリズムを使用して、ストレージ エンジンの同時トランザクションの最大数 (読み取りチケットと書き込みチケットの両方)を動的に調整します。

次の表は、MongoDB 7.0 以降およびそれ以前の過負荷シナリオを特定する方法をまとめたものです。

バージョン
過負荷シナリオの診断

7.0以降

多数の操作が長時間にわたってキューに入れられたままの場合、過負荷が発生している高い可能性があります。

storage engine のトランザクションの同時実行(チケット)の可用性が長期間にわたって 0 であっても、過負荷を示すものではありません

6.0 以前

多数の操作が長時間にわたってキューに入れられたままの場合、過負荷が発生している高い可能性があります。

storage engine のトランザクションの同時実行(チケット)の可用性が長期間にわたって 0 の場合、過負荷を示している高い可能性があります。

queues.execution.write

WiredTiger ストレージエンジンに許可された同時読み取りトランザクション(読み取りチケット)のキュー情報を返すドキュメント。

queues.execution.read

WiredTiger ストレージエンジン に許可された同時書き込みトランザクション (write transaction)(書き込み (write) チケット)の キュー情報 を返すドキュメント。

queues.execution.monitor

許可された同時トランザクション(チケット)の数に対してシステムが行った調整の監視メトリクスを返すドキュメント。

queues.execution.monitor.timesDecreased

キューのサイズが減少した回数。

queues.execution.monitor.timesIncreased

キューのサイズが増加した回数。

queues.execution.monitor.totalAmountDecreased

キューが減少した操作の合計数。

queues.execution.monitor.totalAmountIncreased

キューが増加した操作の合計数。

queues.execution.monitor.resizeDurationMicros

システムがキューのサイズ変更に費やした累計時間(ミリ秒単位)。

queues.ingress

バージョン8.0の新機能

イングレス認証制御のキュー情報を返すドキュメント。これらの値を使用して、ネットワークからデータベースへのエントリを待機している操作の数を制限して、リソースの過負荷に対して保護および軽減します。

許可される同時操作の最大数は ingressAdmissionControllerTicketPoolSize によって制限されます。

out: Long("<num>"),
available: Long("<num>"),
totalTickets: Long("<num>"),
exempt: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
},
normalPriority: {
addedToQueue: Long("<num>"),
removedFromQueue: Long("<num>"),
queueLength: Long("<num>"),
startedProcessing: Long("<num>"),
processing: Long("<num>"),
finishedProcessing: Long("<num>"),
totalTimeProcessingMicros: Long("<num>"),
canceled: Long("<num>"),
newAdmissions: Long("<num>"),
totalTimeQueuedMicros: Long("<num>")
}
out

現在保持されているチケットの数。

available

利用可能なチケットの数。

totalTickets

チケットプールのサイズ。

exempt

キューから除外された操作のメトリクスを返すドキュメント。

exempt.startedProcessing

入場チケットを取得した操作の合計数。

exempt.processing

現在処理中の操作の合計数。

exempt.finishedProcessing

入場チケットをリリースした操作の合計数。

exempt.totalTimeProcessingMicros

入場チケットを操作した合計時間

exempt.canceled

キューでタイムアウトした操作の合計数。

exempt.newAdmissions

キューへの新規入場の合計数。

exempt.totalTimeQueuedMicros

操作がキューで待機している合計時間。

normalPriority

キューの対象となる操作のメトリクスを返すドキュメント。

normalPriority.addedToQueue

キューに追加された操作の合計数。

normalPriority.removedFromQueue

キューから削除された操作の合計数。

normalPriority.queueLength

キュー内の操作の合計数。

normalPriority.startedProcessing

入場チケットを取得した操作の合計数。

normalPriority.processing

現在処理中の操作の合計数。

normalPriority.finishedProcessing

入場チケットをリリースした操作の合計数。

normalPriority.totalTimeProcessingMicros

入場チケットを操作した合計時間

normalPriority.canceled

キューでタイムアウトした操作の合計数。

normalPriority.newAdmissions

キューへの新規入場の合計数。

normalPriority.totalTimeQueuedMicros

操作がキューで待機している合計時間。

バージョン8.0の新機能

querySettings: {
count: <num>,
rejectCount: <num>,
size: <num>
}
querySettings

クエリ設定の構成数と使用状況を含むドキュメント。

MongoDB 8.0以降では、インデックス フィルターを追加する 代わりに、 クエリ設定を使用します 。 インデックス フィルターは MongoDB 8.0以降非推奨です。

クエリ設定は、インデックス フィルターよりも多くの機能を持ちます。 また、インデックス フィルターは永続的ではなく、すべてのクラスター ノードに対してインデックス フィルターを簡単に作成することはできません。 クエリ設定を追加して例を探すには、 setQuerySettingsを参照してください。

querySettings.count

クエリ設定の合計数。

querySettings.rejectCount

reject フィールドが true に設定されているクエリ設定の合計数。reject フィールドを設定するには、setQuerySettings を使用します。

querySettings.size

クエリ設定の合計サイズ(バイト単位)。

バージョン 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.2(および 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>"),
countTransitionToDedicatedConfigServerStarted : Long("<num>"), // Added in MongoDB 8.0
countTransitionToDedicatedConfigServerCompleted : Long("<num>"), // Added in MongoDB 8.0
countTransitionFromDedicatedConfigServerCompleted : Long("<num>"), // Added in MongoDB 8.0
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>,
configServerInShardCache : <boolean>, // Added in MongoDB 8.0
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>")
},
configServerInShardCache : <boolean> // Added in MongoDB 8.0
}
shardingStatistics

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

shardingStatistics.countStaleConfigErrors

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

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

shardingStatistics.countDonorMoveChunkStarted

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

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

shardingStatistics.countDonorMoveChunkCommitted

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

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

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

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

shardingStatistics.countDonorMoveChunkAborted

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

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

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

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

shardingStatistics.totalDonorMoveChunkTimeMillis

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

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

MongoDB 7.1(および 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.1(および 7.0、6.3.2、6.0.6、5.0.18)以降で利用できます。

shardingStatistics.countDocsClonedOnCatchUpOnRecipient

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

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

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

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

shardingStatistics.countBytesClonedOnCatchUpOnRecipient

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

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

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

MongoDB 7.1(および 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.countTransitionToDedicatedConfigServerStarted

transitionToDedicatedConfigServer コマンドが開始された回数。

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

バージョン8.0の新機能

shardingStatistics.countTransitionToDedicatedConfigServerCompleted

transitionToDedicatedConfigServer コマンドが終了した回数。

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

バージョン8.0の新機能

shardingStatistics.countTransitionFromDedicatedConfigServerCompleted

transitionFromDedicatedConfigServer コマンドが終了した回数。

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

バージョン8.0の新機能

shardingStatistics.rangeDeleterTasks

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

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

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

shardingStatistics.configServerInShardCache

コンフィギュレーションサーバーがコンフィギュレーションシャードかどうかを示すブール値。この値は定期的に更新されるため、configServerInShardCache の値は正常なクラスターでは最大約1分間失効する可能性があります。ノードがコンフィギュレーションサーバーと通信できない場合、configServerInShardCache が長期間古いままになる可能性があります。

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.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 がディスクにデータを保持しているかを示すブール値。

注意

tcmalloc 内部使用のみを目的とするメトリクスはこのページでは省略されています。

tcmalloc : {
usingPerCPUCaches : <boolean>, // Added in MongoDB 8.0
maxPerCPUCacheSizeBytes : <integer>, // Added in MongoDB 8.0
generic : {
current_allocated_bytes : <integer>,
heap_size : <integer>,
peak_memory_usage : <integer> // Added in MongoDB 8.0
},
tcmalloc : {
central_cache_free : <integer>,
cpu_free : <integer>, // Added in MongoDB 8.0
release_rate : <integer>,
total_bytes_held : <integer>, // Added in MongoDB 8.0
cpuCache : {
0 : {
overflows : <integer>, // Added in MongoDB 8.0
underflows : <integer> // Added in MongoDB 8.0
},
}
},
tcmalloc_derived : {
total_free_bytes : <integer> // Added in MongoDB 8.0
}
}
tcmalloc

注意

バージョン 8.0 以降、MongoDB は TCMalloc の更新版を使用しており、メモリの断片化と管理が改善されています。詳細は「tcmalloc のアップグレード」を参照してください。

サーバーのメモリ割り当てに関する情報を含むドキュメント。デフォルトでは、tcmalloc メトリクスは serverStatus 出力に含まれます。tcmalloc セクションの冗長度を変更するには、0 から 3(0 と 3 を含む)までの整数を指定します。

  • 冗長度を 0 に設定すると、tcmalloc メトリクスは serverStatus の出力に含まれません。

  • 冗長度を 1 に設定すると、serverStatus 出力にはデフォルトの tcmalloc メトリクスが含まれます。

  • 冗長度を 2 に設定すると、serverStatus 出力にはデフォルトの tcmalloc メトリクスと tcmalloc.tcmalloc.cpuCache セクションが含まれます。

  • 冗長度を 3 に設定すると、serverStatus 出力にはすべての tcmalloc メトリクスが含まれます。

3 より大きい値を指定すると、MongoDB は verbosity3 に設定します。

たとえば、verbosity2 に設定して serverStatus を呼び出すには、次のコマンドを実行します。

db.runCommand( { serverStatus: 1, tcmalloc: 2 } )
tcmalloc.usingPerCPUCaches

TCMalloc が CPU ごとのキャッシュで実行中されているかどうかを示すブール値。tcmalloc.usingPerCPUCachesfalse の場合、次のことを確認してください。

バージョン8.0の新機能

tcmalloc.maxPerCPUCacheSizeBytes

各 CPU キャッシュの最大サイズ(バイト単位)。

バージョン8.0の新機能

tcmalloc.generic.peak_memory_usage

任意の時点で MongoDB によって割り当てられるメモリの最大量(バイト単位)。

バージョン8.0の新機能

tcmalloc.generic.current_allocated_bytes

現在メモリに割り当てられ、MongoDB によってアクティブに使用されているバイトの合計数。

tcmalloc.generic.heap_size

オペレーティングシステムから割り当てられたメモリの量(バイト単位)。この値には、現在使用中のメモリと、割り当てられて使用されていないメモリが含まれます。

tcmalloc.tcmalloc.central_cache_free

中央フリーリストに保持されているメモリの量(バイト単位)。中央フリーリストは、再利用するために空きメモリを管理する構造です。

tcmalloc.tcmalloc.cpu_free

すべての CPU キャッシュで使用可能な空きメモリの量(バイト単位)。

バージョン8.0の新機能

tcmalloc.tcmalloc.total_bytes_held

現在キャッシュに保持されているメモリの量(バイト単位)。

バージョン8.0の新機能

tcmalloc.tcmalloc.release_rate

未使用のメモリがオペレーティングシステムに解放される速度(1 秒あたりのバイト数単位)。tcmallocReleaseRateパラメータは、tcmalloc.tcmalloc.release_rate の値を決定します。

tcmalloc.tcmalloc.cpuCache

各 CPU キャッシュのデータを提供する文書。

cpuCache メトリクスは、デフォルトの冗長レベルでは除外されます。cpuCache メトリクスを表示するには、tcmalloc 冗長度を少なくとも 2 に設定する必要があります。

バージョン8.0の新機能

tcmalloc.tcmalloc.cpuCache.N.overflows

CPU キャッシュでオーバーフローが発生した回数。オーバーフローは、ユーザーがメモリの割り当てを解除し、キャッシュがいっぱいになった場合に発生します。

バージョン8.0の新機能

tcmalloc.tcmalloc.cpuCache.N.underflows

CPU キャッシュでアンダーフローが発生した回数。アンダーフローは、ユーザーがメモリを割り当て、キャッシュが空の場合に発生します。

バージョン8.0の新機能

tcmalloc.tcmalloc_derived.total_free_bytes

tcmalloc より前に残っているメモリの量は、オペレーティングシステムにさらにメモリをリクエストする必要があります。

バージョン8.0の新機能

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 サブシステムが飽和状態になっている可能性があります。

戻る

プロファイル