

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.

# Servlet de statut Neptune openCypher et point de terminaison de statut
<a name="access-graph-opencypher-status"></a>

Le point de terminaison de statut openCypher permet d'accéder aux informations relatives aux requêtes qui sont en cours d'exécution sur le serveur ou en attente d'exécution. Il vous permet également d'annuler ces requêtes. Le point de terminaison est :

```
https://(the server):(the port number)/openCypher/status
```

Vous pouvez utiliser les méthodes HTTP `GET` et `POST` pour obtenir le statut actuel à partir du serveur ou pour annuler une requête. Vous pouvez également utiliser la méthode `DELETE` pour annuler une requête en cours ou en attente.

## Paramètres des demandes de statut
<a name="access-graph-opencypher-status-parameters"></a>

**Paramètres des requêtes de statut**
+ **`includeWaiting`** (`true`ou`false`) : lorsque ce paramètre est défini sur `true` et que d'autres paramètres ne sont pas présents, des informations de statut pour les requêtes en attente ainsi que pour les requêtes en cours d'exécution sont renvoyées.
+ **`cancelQuery`** : utilisé uniquement avec les méthodes `GET` et `POST` pour indiquer qu'il s'agit d'une demande d'annulation. La méthode `DELETE` n'a pas besoin de ce paramètre.

  La valeur du paramètre `cancelQuery` n'est pas utilisée, mais lorsque `cancelQuery` est présent, le paramètre `queryId` est obligatoire pour identifier la requête à annuler.
+ **`queryId`** : contient l'ID d'une requête spécifique.

  Lorsque ce paramètre est utilisé avec la méthode `GET` ou `POST` et que le paramètre `cancelQuery` n'est pas présent, les informations de statut sont renvoyées par `queryId` pour la requête spécifique qu'il identifie. Si le paramètre `cancelQuery` est présent, la requête spécifique identifiée par `queryId` est annulée.

  Lorsqu'il est utilisé avec la méthode `DELETE`, `queryId` indique toujours une requête spécifique à annuler.
+ **`silent`** : utilisé uniquement lors de l'annulation d'une requête. Si ce paramètre est défini sur `true`, l'annulation se produit silencieusement.

## Champs de réponse aux demandes de statut
<a name="access-graph-opencypher-status-response-fields"></a>

**Champs de réponse relatifs au statut si l'ID d'une requête spécifique n'est pas fourni**
+ **acceptedQueryCount**— Le nombre de requêtes acceptées mais non encore terminées, y compris les requêtes dans la file d'attente.
+ **runningQueryCount**— Le nombre de requêtes OpenCypher en cours d'exécution.
+ **queries** : requêtes openCypher actuelles.

**Champs de réponse relatifs au statut pour une requête spécifique**
+ **queryID** : identifiant GUID de la requête. Neptune attribue automatiquement cette valeur d'ID à chaque requête, mais vous pouvez également attribuer votre propre ID (voir [Injection d'un ID personnalisé dans une requête Neptune Gremlin ou SPARQL](features-query-id.md)).
+ **queryString** : requête soumise. Celle-ci est tronquée à 1 024 caractères si elle est plus longue que cela.
+ **queryEvalStats**— Statistiques pour cette requête :
  + **waited** : indique la durée d'attente de la requête, en millisecondes.
  + **elapsed** : nombre de microsecondes d'exécution de la requête jusqu'au moment T.
  + **cancelled** : `True` indique que la requête a été annulée, ou `False` qu'elle n'a pas été annulée.

## Exemples de demandes de statut et de réponses
<a name="access-graph-opencypher-status-samples"></a>
+ **Demande de statut de toutes les requêtes, y compris celles en attente :**

  ```
  curl https://server:port/openCypher/status \
    --data-urlencode "includeWaiting=true"
  ```

  *Réponse :*

  ```
  {
    "acceptedQueryCount" : 0,
    "runningQueryCount" : 0,
    "queries" : [ ]
  }
  ```
+ **Demande de statut des requêtes en cours, **à l'exclusion** de celles en attente :**

  ```
  curl https://server:port/openCypher/status
  ```

  *Réponse :*

  ```
  {
    "acceptedQueryCount" : 0,
    "runningQueryCount" : 0,
    "queries" : [ ]
  }
  ```
+ **Demande de statut d'une seule requête :**

  ```
  curl https://server:port/openCypher/status \
   --data-urlencode "queryId=eadc6eea-698b-4a2f-8554-5270ab17ebee"
  ```

  *Réponse :*

  ```
  {
    "queryId" : "eadc6eea-698b-4a2f-8554-5270ab17ebee",
    "queryString" : "MATCH (n1)-[:knows]->(n2), (n2)-[:knows]->(n3), (n3)-[:knows]->(n4), (n4)-[:knows]->(n5), (n5)-[:knows]->(n6), (n6)-[:knows]->(n7), (n7)-[:knows]->(n8), (n8)-[:knows]->(n9), (n9)-[:knows]->(n10) RETURN COUNT(n1);",
    "queryEvalStats" : {
      "waited" : 0,
      "elapsed" : 23463,
      "cancelled" : false
    }
  }
  ```
+ **Demandes d'annulation d'une requête**

  1. En utilisant `POST` :

  ```
  curl -X POST https://server:port/openCypher/status \
    --data-urlencode "cancelQuery" \
    --data-urlencode "queryId=f43ce17b-db01-4d37-a074-c76d1c26d7a9"
  ```

  *Réponse :*

  ```
  {
    "status" : "200 OK",
    "payload" : true
  }
  ```

  2. En utilisant `GET` :

  ```
  curl -X GET https://server:port/openCypher/status \
    --data-urlencode "cancelQuery" \
    --data-urlencode "queryId=588af350-cfde-4222-bee6-b9cedc87180d"
  ```

  *Réponse :*

  ```
  {
    "status" : "200 OK",
    "payload" : true
  }
  ```

  3. En utilisant `DELETE` :

  ```
  curl -X DELETE \
    -s "https://server:port/openCypher/status?queryId=b9a516d1-d25c-4301-bb80-10b2743ecf0e"
  ```

  *Réponse :*

  ```
  {
    "status" : "200 OK",
    "payload" : true
  }
  ```