

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# \$1collStats
<a name="collStats"></a>

Nouveau depuis la version 4.0

La phase `$collStats` d'agrégation dans Amazon DocumentDB fournit des statistiques sur la collection spécifiée, de la même manière que la `db.collection.stats()` commande du shell MongoDB. Cette étape peut être utilisée pour récupérer des informations sur la collection, telles que le nombre de documents, la taille totale de la collection et divers indicateurs de performance.

**Paramètres**
+ `latencyStats`: (facultatif) Document qui spécifie les options de collecte des statistiques de latence. Ce paramètre n'est pas pris en charge dans Amazon DocumentDB.
+ `recordStats`: (facultatif) Document qui spécifie les options de collecte de statistiques d'enregistrement. Ce paramètre n'est pas pris en charge dans Amazon DocumentDB.
+ `queryExecStats`: (facultatif) Document qui spécifie les options de collecte des statistiques d'exécution des requêtes. Ce paramètre n'est pas pris en charge dans Amazon DocumentDB.

## Exemple (MongoDB Shell)
<a name="collStats-examples"></a>

L'exemple suivant montre comment utiliser la phase d'`$collStats`agrégation pour récupérer les statistiques relatives à une collection nommée `test` dans la `db` base de données.

**Création d'exemples de documents**

```
db.test.insertMany([
  { "name": "John", "age": 30 },
  { "name": "Jane", "age": 25 },
  { "name": "Bob", "age": 35 }
]);
```

**Exemple de requête**

```
db.test.aggregate([
  { $collStats: {} }
]);
```

**Sortie**

```
{
  "ns" : "db.test",
  "count" : 3,
  "size" : 87,
  "avgObjSize" : 29,
  "storageSize" : 40960,
  "capped" : false,
  "nindexes" : 1,
  "totalIndexSize" : 8192,
  "indexSizes" : {
    "_id_" : 8192
  },
  "collScans" : 0,
  "idxScans" : 0,
  "opCounter" : {
    "numDocsIns" : 3,
    "numDocsUpd" : 0,
    "numDocsDel" : 0
  },
  "cacheStats" : {
    "collBlksHit" : 0,
    "collBlksRead" : 0,
    "collHitRatio" : 0,
    "idxBlksHit" : 0,
    "idxBlksRead" : 0,
    "idxHitRatio" : 0
  },
  "lastReset" : "2023-04-11T12:00:00Z",
  "ok" : 1,
  "operationTime" : Timestamp(1681206000, 1)
}
```

## Exemples de code
<a name="collStats-code"></a>

Pour afficher un exemple de code d'utilisation de la `$collStats` commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

------
#### [ Node.js ]

Voici un exemple d'utilisation de l'étape d'`$collStats`agrégation dans une application Node.js à l'aide du pilote officiel MongoDB Node.js :

```
const { MongoClient } = require('mongodb');

async function runCollStatsExample() {
  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('db');
  const collection = db.collection('test');

  const result = await collection.aggregate([
    { $collStats: {} }
  ]).toArray();

  console.log(result);

  await client.close();
}

runCollStatsExample();
```

------
#### [ Python ]

Voici un exemple d'utilisation de l'étape d'`$collStats`agrégation dans une application Python à l'aide du PyMongo pilote :

```
from pymongo import MongoClient

def run_coll_stats_example():
    client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false')
    db = client['db']
    collection = db['test']

    result = list(collection.aggregate([
        { '$collStats': {} }
    ]))

    print(result)

    client.close()

run_coll_stats_example()
```

------