$currentOp - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

$currentOp

Die $currentOp Aggregationsphase gibt Informationen über aktuell ausgeführte Operationen in der Datenbank zurück. Diese Phase ist nützlich für die Überwachung aktiver Abfragen und Operationen in einer Aggregationspipeline.

Parameter

  • allUsers(optional): Wenn auf gesetzttrue, werden Operationen für alle Benutzer zurückgegeben. Der Standardwert ist false.

  • idleConnections(optional): Wenn auf gesetzttrue, schließt dies inaktive Verbindungen ein. Der Standardwert ist false.

  • idleCursors(optional): Wenn auf gesetzttrue, enthält dies Informationen über Cursor im Leerlauf. Der Standardwert ist false.

  • idleSessions(optional): Wenn auf gesetzttrue, enthält es Informationen über inaktive Sitzungen. Der Standardwert ist true.

  • localOps(optional): Wenn auf gesetzttrue, schließt dies lokale Operationen ein. Der Standardwert ist false.

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie die $currentOp Aggregationsphase verwendet wird, um Informationen über aktive Lesevorgänge abzurufen.

Beispiel für eine Abfrage

db.aggregate([ { $currentOp: { allUsers: true, idleConnections: false } }, { $match: { op: "query" } } ])

Ausgabe

[ { "opid": "12345", "active": true, "op": "query", "ns": "test.users", "secs_running": 2 } ]

Codebeispiele

Um ein Codebeispiel für die Verwendung des $currentOp Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

Node.js
const { MongoClient } = require('mongodb'); async function example() { const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false'); const db = client.db('admin'); const result = await db.aggregate([ { $currentOp: { allUsers: true, idleConnections: false } }, { $match: { op: "query" } } ]).toArray(); console.log(result); await client.close(); } example();
Python
from pymongo import MongoClient def example(): client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false') db = client['admin'] result = list(db.aggregate([ { '$currentOp': { 'allUsers': True, 'idleConnections': False } }, { '$match': { 'op': 'query' } } ])) print(result) client.close() example()