MongoDB のメトリクス
次の表は、MongoDB チェックの出力として収集されるメトリクスの一覧です。 [主なメトリクス] として示されるエントリは、アラートが生成された後に オペレータワークスペース の [メトリクス] タブに表示される、可視化の高いメトリクスです。これらのメトリクスは、指定された問題をさらに調査するのに役立つ追加情報をオペレーターに提供します。
| メトリクスタイプ | リソース (該当する場合は特定のデータベースの名前) | 単位 | メトリクスタイプの説明 |
|---|---|---|---|
| mongodb.asserts.msg (主なメトリクス) | カウント | MongoDB プロセスが開始されてから発生したメッセージアサーションの数。これらのメッセージの詳細については、ログファイルを確認してください。 | |
| mongodb.asserts.regular (主なメトリクス) | カウント | MongoDB プロセスが開始されてから発生した定期的なアサーションの数これらのメッセージの詳細については、ログファイルを確認してください。 | |
| mongodb.asserts.rollovers | カウント | MongoDB プロセスが最後に開始されてからロールオーバーカウンターがロールオーバーした回数 | |
| mongodb.asserts.tripwire | MongoDB プロセスが開始されてから発生した Triplewire アサーションの数 | ||
| mongodb.asserts.user | カウント | MongoDB プロセスが最後に開始されてから発生した「ユーザーアサート」の数 | |
| mongodb.asserts.warning (主なメトリクス) | カウント | MongoDB プロセスが開始されてから発生した警告の数 | |
| mongodb.connections.available | カウント | 利用可能な未使用の受信接続の数 | |
| mongodb.connections.current | カウント | クライアントからデータベースサーバーへの受信接続の数 | |
| mongodb.connections.totalCreated | カウント | サーバーに作成されたすべての受信接続の数 | |
| mongodb.cursor.open.noTimeout | カウント | 非アクティブ期間の経過後にタイムアウトしないようにオプション DBQuery.Option.noTimeout が設定されたオープンカーソルの数 | |
| mongodb.cursor.open.pinned | カウント | 「固定」されたオープンカーソルの数 | |
| mongodb.cursor.open.total (主なメトリクス) | カウント | MongoDB がクライアント用に保持しているカーソルの数。MongoDB は未使用のカーソルを使い果たすため、通常、この値は小さい値またはゼロになります。ただし、キュー、テール可能な古いカーソル、または多数の操作がある場合は、この値が増加する可能性があります。 | |
| mongodb.cursor.timedOut | カウント | サーバープロセスが開始されてからタイムアウトしたカーソルの合計数 | |
| mongodb.databaseSizes.avgObjSize | admin | バイト | 各ドキュメントの平均サイズ (バイト) |
| mongodb.databaseSizes.avgObjSize | config | バイト | 各ドキュメントの平均サイズ (バイト) |
| mongodb.databaseSizes.avgObjSize | local | バイト | 各ドキュメントの平均サイズ (バイト) |
| mongodb.databaseSizes.collections | admin | カウント | データベース内のコレクションの数 |
| mongodb.databaseSizes.collections | config | カウント | データベース内のコレクションの数 |
| mongodb.databaseSizes.collections | local | カウント | データベース内のコレクションの数 |
| mongodb.databaseSizes.dataSize | admin | バイト | データベースに保持されている非圧縮データの合計サイズ。ドキュメントを削除すると、dataSize が減少します。WiredTiger ストレージエンジンを使用するデータベースでは、圧縮が有効になっている場合、dataSize が storageSize より大きくなる可能性があります。dataSize は、ドキュメントが縮小すると減少します。 |
| mongodb.databaseSizes.dataSize | config | バイト | データベースに保持されている非圧縮データの合計サイズ。 |
| mongodb.databaseSizes.dataSize | local | バイト | データベースに保持されている非圧縮データの合計サイズ。 |
| mongodb.databaseSizes.indexes | admin | カウント | データベース内のすべてのコレクションのインデックスの合計数 |
| mongodb.databaseSizes.indexes | config | カウント | データベース内のすべてのコレクションのインデックスの合計数 |
| mongodb.databaseSizes.indexes | local | カウント | データベース内のすべてのコレクションのインデックスの合計数 |
| mongodb.databaseSizes.indexSize | admin | バイト | 空きインデックススペースを含む、データベース内のすべてのインデックスに割り当てられたスペースの合計 |
| mongodb.databaseSizes.indexSize | config | バイト | 空きインデックススペースを含む、データベース内のすべてのインデックスに割り当てられたスペースの合計 |
| mongodb.databaseSizes.indexSize | local | バイト | 空きインデックススペースを含む、データベース内のすべてのインデックスに割り当てられたスペースの合計 |
| mongodb.databaseSizes.objects | admin | カウント | すべてのコレクションのデータベース内のオブジェクト (具体的にはドキュメント) の数 |
| mongodb.databaseSizes.objects | config | カウント | すべてのコレクションのデータベース内のオブジェクト (具体的にはドキュメント) の数 |
| mongodb.databaseSizes.objects | local | カウント | すべてのコレクションのデータベース内のオブジェクト (具体的にはドキュメント) の数 |
| mongodb.databaseSizes.storageSize | admin | バイト | この値は、ドキュメントを削除または縮小しても減少しません。圧縮が有効になっている WiredTiger ストレージエンジンを使用するデータベースでは、この値が dataSize よりも小さい場合があります。storageSize には、インデックスに割り当てられたスペースは含まれません。インデックスの合計サイズについては、「indexSize」を参照してください。 |
| mongodb.databaseSizes.storageSize | config | バイト | 空きスペースを含む、ドキュメントストレージのデータベース内のすべてのコレクションに割り当てられたスペースの合計 |
| mongodb.databaseSizes.storageSize | local | バイト | 空きスペースを含む、ドキュメントストレージのデータベース内のすべてのコレクションに割り当てられたスペースの合計 |
| mongodb.globalLock.activeClients.readers (主なメトリクス) | カウント | 読み取り操作を実行しているアクティブなクライアント接続の数 | |
| mongodb.globalLock.activeClients.total | カウント | システムスレッド、キューに入れられたリーダーおよびライターを含む、データベースへの内部クライアント接続の合計数。システムスレッドが含まれるため、このメトリクスは activeClients.readers と activeClients.writers の合計よりも高くなります。 | |
| mongodb.globalLock.activeClients.writers (主なメトリクス) | カウント | 書き込み操作を実行しているアクティブなクライアント接続の数 | |
| mongodb.globalLock.currentQueue.readers (主なメトリクス) | カウント | 現在キューに格納され、読み取りロックを待機している操作の数。特に短い操作など、読み取りキューが常に小さい場合は問題ありません。 | |
| mongodb.globalLock.currentQueue.total | カウント | キューに格納され、ロックを待機している操作の合計数 (globalLock.currentQueue.readers と globalLock.currentQueue.writers の合計)。特に短い操作など、キューが常に小さい場合は問題ありません。globalLock.activeClients リーダーとライターの情報は、このデータのコンテキストを提供します。 | |
| mongodb.globalLock.currentQueue.writers (主なメトリクス) | カウント | 現在キューに格納され、書き込みロックを待機している操作の数。特に短い操作など、書き込みキューが常に小さい場合は問題ありません。 | |
| mongodb.globalLock.totalTime | マイクロ秒 | データベースが最後に起動して globalLock を作成してからの時間 (マイクロ秒)。これは、サーバーの合計アップタイムにほぼ相当します。 | |
| mongodb.locks.Collection.acquireCount_r | カウント | インテント共有 (IS) ロックモードでコレクションロックが取得された回数 | |
| mongodb.locks.Collection.acquireCount_w | カウント | インテント排他 (IX) ロックモードでコレクションロックが取得された回数 | |
| mongodb.locks.Collection.acquireCount_W | カウント | 排他 (X) ロックモードでコレクションロックが取得された回数 | |
| mongodb.locks.Database.acquireCount_r | カウント | インテント共有 (IS) ロックモードでデータベースロックが取得された回数 | |
| mongodb.locks.Database.acquireCount_w | カウント | インテント排他 (IX) ロックモードでデータベースロックが取得された回数 | |
| mongodb.locks.Database.acquireCount_W | カウント | 排他 (X) ロックモードでデータベースロックが取得された回数 | |
| mongodb.locks.Global.acquireCount_r | カウント | インテント共有 (IS) ロックモードでグローバルロックが取得された回数 | |
| mongodb.locks.Global.acquireCount_w | カウント | インテント排他 (IX) ロックモードでグローバルロックが取得された回数 | |
| mongodb.locks.Global.acquireCount_W | カウント | 排他 (X) ロックモードでグローバルロックが取得された回数 | |
| mongodb.mem.pageFaults | カウント | ページフォールトの合計数。extra_info.page_faults カウンターは、パフォーマンスが低下すると大幅に増加する場合があり、限られたメモリ環境や大規模なデータセットと相関する可能性があります。限定的で散発的なページフォールトが必ずしも問題となるわけではありません。 | |
| mongodb.mem.resident (主なメトリクス) | メビバイト | この値は、データベースプロセスで現在使用されている RAM の容量 (MiB) にほぼ相当します。通常の使用では、この値は大きくなる傾向があります。専用データベースサーバーでは、この数値はシステムメモリの合計量に近づく傾向があります。 | |
| mongodb.mem.virtual | メビバイト | mongod プロセスによって使用される仮想メモリの量 (MiB) | |
| mongodb.metrics.document.deleted | カウント | 削除されたドキュメントの合計数 | |
| mongodb.metrics.document.inserted | カウント | 挿入されたドキュメントの合計数 | |
| mongodb.metrics.document.returned | カウント | クエリによって返されたドキュメントの合計数 | |
| mongodb.metrics.document.updated | カウント | 更新されたドキュメントの合計数 | |
| mongodb.metrics.getLastError.wtime_num (主なメトリクス) | カウント | レプリカセットの 1 つ以上のメンバーが書き込み操作を確認するのを待機する、指定された書き込み確認 (w) を伴う getLastError 操作の合計数 (a w 値が 1 より大きい) | |
| mongodb.metrics.getLastError.wtime_totalMillis (主なメトリクス) | ミリ秒 | レプリカセットの 1 つ以上のメンバーが書き込み操作を確認するのを待機する、書き込み確認 (w) を伴う getLastError 操作の実行に mongod が費やした合計時間 (ミリ秒) (a w 値は 1 より大きい) | |
| mongodb.metrics.getLastError.wtimeouts (主なメトリクス) | カウント | wtimeout しきい値の結果として、書き込み確認操作がタイムアウトして getLastError になった回数。この数値は、デフォルトとデフォルト以外の両方の書き込み確認の仕様に合わせて増分します。 | |
| mongodb.metrics.operation.scanAndOrder | カウント | インデックスを使用してソート操作を実行できない、ソートされた番号を返すクエリの合計数 | |
| mongodb.metrics.queryExecutor.scanned | カウント | クエリおよびクエリ計画の評価中にスキャンされたインデックスアイテムの合計数。このカウンターは、explain() の出力の totalKeysExamined と同じです。 | |
| mongodb.metrics.queryExecutor.scannedObjects | カウント | クエリおよびクエリ計画の評価中にスキャンされたドキュメントの合計数。このカウンターは、explain() の出力の totalDocsExamined と同じです。 | |
| mongodb.metrics.record.moves | オンディスクメモリファイルのレコード割り当てに関連するデータをレポートするドキュメント | ||
| mongodb.metrics.repl.apply.batches_num | カウント | すべてのデータベースに適用されるバッチの合計数 | |
| mongodb.metrics.repl.apply.batches_totalMillis | カウント | mongod が oplog からの操作の適用に費やした合計時間 (ミリ秒) | |
| mongodb.metrics.repl.apply.ops | カウント | 適用された oplog 操作の合計数。metrics.repl.apply.ops は各操作の後に増分します。 | |
| mongodb.metrics.repl.buffer.count | カウント | oplog バッファー内の現在の操作数 | |
| mongodb.metrics.repl.buffer.maxSizeBytes | バイト | バッファーの最大サイズ。この値は mongod の定数設定であり、設定することはできません。 | |
| mongodb.metrics.repl.buffer.sizeBytes | バイト | oplog バッファーのコンテンツの現在のサイズ | |
| mongodb.metrics.repl.network.bytes | カウント | レプリケーション同期ソースから読み取られたデータの合計量 | |
| mongodb.metrics.repl.network.getmores_num | カウント | レプリケーション同期ソースから追加の操作セットを要求する操作である getmore 操作の合計数をレポートします。 | |
| mongodb.metrics.repl.network.getmores_totalMillis | カウント | getmore 操作からのデータ収集に必要な合計時間 | |
| mongodb.metrics.repl.network.ops | カウント | レプリケーションソースから読み取られた操作の合計数 | |
| mongodb.metrics.repl.network.readersCreated | カウント | 作成された oplog クエリプロセスの合計数。MongoDB は、タイムアウトやネットワーク操作など、接続でエラーが発生するたびに、新しい oplog クエリを作成します。さらに、metrics.repl.network.readersCreated は、MongoDB がレプリケーションの新しいソースを選択するたびに増分します。 | |
| mongodb.metrics.ttl.deletedDocuments | カウント | ttl インデックス付きのコレクションから削除されたドキュメントの合計数 | |
| mongodb.metrics.ttl.passes | カウント | ttl インデックス付きのコレクションから削除されたドキュメントの合計数 | |
| mongodb.network.bytesIn | カウント | クライアントによって開始されたネットワーク接続を介してサーバーが受信した合計バイト数 | |
| mongodb.network.bytesOut | カウント | クライアントによって開始されたネットワーク接続を介してサーバーが送信した合計バイト数 | |
| mongodb.network.numRequests | カウント | サーバーが受信した個別の要求の合計数。MongoDB のネットワーク使用率が想定とアプリケーションの使用率と一致することを確認するには、この値を使用して network.bytesIn および network.bytesOut の値のコンテキストを指定します。 | |
| mongodb.opcounters.command | カウント | mongod インスタンスが最後に開始されてからデータベースに発行されたコマンドの合計数。opcounters.command は、書き込みコマンド (insert、update、delete) を除くすべてのコマンドをカウントします。 | |
| mongodb.opcounters.delete | カウント | mongod インスタンスが最後に開始されてからの削除操作の合計数 | |
| mongodb.opcounters.getmore | カウント | mongod インスタンスが最後に開始されてからの getMore 操作の合計数。このカウンターは、クエリ数が少ない場合でも高くなる可能性があります。セカンダリノードは、レプリケーションプロセスの一部として getMore 操作を送信します。 | |
| mongodb.opcounters.insert | カウント | mongod インスタンスが最後に開始されてから受信した挿入操作の合計数 | |
| mongodb.opcounters.query | カウント | mongod インスタンスが最後に開始されてから受信したクエリの合計数 | |
| mongodb.opcounters.update | カウント | mongod インスタンスが最後に開始されてから受信した更新操作の合計数 | |
| mongodb.opcountersRepl.command | カウント | mongod インスタンスが最後に開始されてからデータベースに発行されたレプリケート済みコマンドの合計数 | |
| mongodb.opcountersRepl.delete | カウント | mongod インスタンスが最後に開始されてからのレプリケート済み削除操作の合計数 | |
| mongodb.opcountersRepl.getmore | カウント | mongod インスタンスが最後に開始された以降の getMore 操作の合計数 | |
| mongodb.opcountersRepl.insert (主なメトリクス) | カウント | mongod インスタンスが最後に開始された以降のレプリケート済み挿入操作の合計数 | |
| mongodb.opcountersRepl.query (主なメトリクス) | カウント | mongod インスタンスが最後に開始された以降のレプリケート済みクエリの合計数 | |
| mongodb.opcountersRepl.update | カウント | mongod インスタンスが最後に開始された以降のレプリケート済み更新操作の合計数 |