Docs Menu
Docs Home
/
MongoDB Atlas
/ /

フェデレーティッドデータベースインスタンスに対するクエリのステータスの決定

項目一覧

  • 構文
  • 出力

$currentOp (集計)を使用して実行中のクエリのステータスを判断できます。 $currentOpを実行するには、 db.aggregateヘルパーを使用します。

注意

管理者ユーザーは、 $currentOp allUsersオプションを使用してすべてのクエリを表示できます。

$currentOpadminデータベースに対して実行する必要があります。

注意

集計パイプラインに$currentOpステージのみが含まれている場合、Atlas Data Federation は同時クエリの最大数に制限を適用しません。 同時クエリの最大数に達した後でも、 $currentOpステージを含むクエリを実行できます。

db.aggregate([{$currentOp: {} }])

$currentOpは、次のフィールドを持つドキュメントを返します。

フィールド
タイプ
説明
$currentOp.type
string
操作のタイプ。 値は常にopです。
$currentOp.opid
ObjectId形式の操作の一意の識別子。 フィールド値は、エラーやログで確認できるcorrelationIDと同じです。
$currentOp.client
string
IP アドレス(またはホスト名)と、操作の発信元となるクライアント接続のエフェメラル ポート。
$currentOp.clientMetadata
ドキュメント

クライアントなどの追加のクライアント情報。

  • ApplicationName

  • ドライバー名とバージョン

  • オペレーティング システムの名前、タイプ、アーキテクチャ、バージョン

$currentOp.active
ブール値
操作が開始されたかどうかを指定します。 値は、操作が開始または完了している場合はtrueで、操作がアイドル状態の場合はfalseです。
$currentOp.currentOpTime
操作の開始時間。
$currentOp.ns
string
操作の対象となる名前空間。 名前空間は、データベース名とコレクション名をドットで連結したもの( . )で構成されています。つまり、 "<database>.<collection>"です。
$currentOp.command
ドキュメント
この操作に関連付けられたコマンドオブジェクトを含むドキュメント。
$currentOp.msg
string
操作のステータスと進行状況を説明するメッセージ。
$currentOp.progress
ドキュメント
操作に対して実行された作業量を含むドキュメント。
$currentOp.progress.workDone
integer
ドキュメントがパイプラインを通過するにつれて増加する数値は、クエリの完了に向けて進行状況が行われたことを示します。 この数値はパーセンテージではなく、残っている作業量を見積もるために使用することはできません。

以下の例では、「 を使い始める」チュートリアルで説明されているsampleデータベース内のairbnbコレクションで次のいずれかのクエリが実行されているとします。

db.airbnb.find( { "address.market" : "Porto", "review_scores.review_scores_rating": {$gt: 79}}).comment("Find properties in Porto")
db.airbnb.aggregate(
[
{
$match: {
"address.market": "Porto",
"review_scores.review_scores_rating": {$gt: 79}
}
}
], { comment: "Find properties in Porto" })

次の例では、 sampleデータベース内のairbnbコレクションで実行されていた以前のクエリに関する情報を返します。

db.aggregate([{$currentOp: {} }])

$currentOpは次のドキュメントを返します。 workDoneフィールドは、 $currentOpが実行された時点で770ドキュメントが処理されていることを示します。

{
"type" : "op",
"opid" : ObjectId("1635fa35bf73f4320c6f99d0"),
"client" : "73.231.201.205:62351",
"clientMetadata" : {
"application" : {
"name" : "MongoDB Shell"
},
"driver" : {
"name" : "MongoDB Internal Client",
"version" : "4.2.0"
},
"os" : {
"type" : "Darwin",
"name" : "Mac OS X",
"architecture" : "x86_64",
"version" : "18.7.0"
}
},
"active" : true,
"currentOpTime" : ISODate("2020-03-26T12:51:43.291Z"),
"ns" : "sample.airbnb",
"command" : {
"find" : "airbnb",
"filter" : {
"address.market" : "Porto",
"review_scores.review_scores_rating" : {
"$gt" : 79
}
},
"comment" : "Find properties in Porto",
"lsid" : {
"id" : UUID("2211f8ac-56b2-4ba4-bb0c-2e5dd5b7cc21")
},
"$db" : "sample"
},
"msg" : "work done: 770",
"progress" : {
"workDone" : 770
}
}
{
"type" : "op",
"client" : "73.231.201.205:62353",
"clientMetadata" : {
"application" : {
"name" : "MongoDB Shell"
},
"driver" : {
"name" : "MongoDB Internal Client",
"version" : "4.2.0"
},
"os" : {
"type" : "Darwin",
"name" : "Mac OS X",
"architecture" : "x86_64",
"version" : "18.7.0"
}
},
"active" : true,
"currentOpTime" : ISODate("2020-03-26T12:51:47.380Z"),
"ns" : "admin.$cmd.aggregate",
"command" : {
"aggregate" : 1,
"pipeline" : [
{
"$currentOp" : {
}
}
],
"cursor" : {
},
"lsid" : {
"id" : UUID("045ea383-65d7-4e88-a989-37b7a8da23bc")
},
"$db" : "admin"
},
"msg" : "work done: 0",
"progress" : {
"workDone" : 0
}
}

戻る

クエリ制限を管理する

項目一覧