定義
構文
$listSampledQueries の構文は次のとおりです。
{ $listSampledQueries: { namespace: <namespace> } }
動作
単一のコレクションのサンプリングされたクエリを一覧表示するには、
namespace引数でコレクションを指定します。すべてのコレクションのサンプリングされたクエリを一覧表示するには、
namespace引数を省略します。
アクセス制御
$listSampledQueries には、クラスター上の clusterMonitorロールが必要です。
制限
Atlas マルチテナント構成では
$listSampledQueriesは使用できません。スタンドアロン配置では
$listSampledQueriesは使用できません。$listSampledQueriesを--shardsvrレプリカセットに対して直接使用することはできません。 シャーディングされたクラスターで実行する場合、$listSampledQueriesはmongosに対して実行する必要があります。
例
MongoDB Node.jsドライバーを使用して $listSampledQueries ステージを集計パイプラインに追加するには、パイプラインオブジェクトで $listSampledQueries 演算子を使用します。
すべてのコレクションのサンプル クエリを一覧表示する
次の集計操作は、レプリカセット内のすべてのコレクションのすべてのサンプリングされたクエリを一覧表示します。
const pipeline = [{ $listSampledQueries: {} }]; const cursor = db.aggregate(pipeline); return cursor;
特定のコレクションのサンプル クエリを一覧表示する
次の集計操作は、sample_mflixデータベース内の moviesコレクションのすべてのサンプリング クエリを一覧表示します。
const pipeline = [{ $listSampledQueries: { namespace: "sample_mflix.movies" } }]; const cursor = db.aggregate(pipeline); return cursor;
出力
出力フィールドは、読み取りクエリと書込みクエリで異なります。
読み取りクエリ
{ _id: <uuid>, ns: "<database>.<collection>", collectionUuid: <collUUID>, cmdName: <find|aggregate|count|distinct>, cmd: { filter: <object>, collation: <object>, let: <object> }, expireAt: <date> }
フィールド名 | タイプ | 説明 |
|---|---|---|
| UUID | クエリのサンプル ID。 |
| string | サンプリングされたコレクションの名前空間。 |
| UUID | サンプリングされたコレクションの ID。 |
| string | サンプリングされたコマンドの名前。 次のいずれかになります。
|
| オブジェクト | 該当する場合は、 で実行されたコマンドをフィルタリングします。 |
| オブジェクト | 該当する場合は、 で実行されたコマンドを照合します。 |
| オブジェクト | コマンドが実行されたカスタム変数(該当する場合)。 |
| date | サンプルの有効期限が切れる日付。 |
書込み (write) クエリ
{ _id: <uuid>, ns: "<database>.<collection>", collectionUuid: <collUUID>, cmdName: <update|delete|findAndModify>, cmd: <object>, expireAt: <date> }
フィールド名 | タイプ | 説明 |
|---|---|---|
| UUID | クエリのサンプル ID。 |
| string | サンプリングされたコレクションの名前空間。 |
| UUID | サンプリングされたコレクションの ID。 |
| string | サンプリングされたコマンドの名前。 次のいずれかになります。
|
| オブジェクト | コマンド オブジェクト |
| date | サンプルの有効期限が切れる日付。 |