

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Servlet de estado de openCypher de Neptune y punto de conexión de estado
<a name="access-graph-opencypher-status"></a>

El punto de conexión de estado de openCypher proporciona acceso a la información sobre las consultas que se están ejecutando actualmente en el servidor o están en espera de ejecutarse. También le permite cancelar esas consultas. El punto de conexión es:

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

Puede utilizar los métodos HTTP `GET` y `POST` para obtener el estado actual del servidor o para cancelar una consulta. También puede usar el método `DELETE` para cancelar una consulta en curso o en espera.

## Parámetros de las solicitudes de estado
<a name="access-graph-opencypher-status-parameters"></a>

**Parámetros de la consulta de estado**
+ **`includeWaiting`** (`true` o `false`): cuando se establece en `true` y otros parámetros no están presentes, se devuelve la información de estado tanto para las consultas en espera como para las consultas en ejecución.
+ **`cancelQuery`**: se utiliza únicamente con los métodos `GET` y `POST` para indicar que se trata de una solicitud de cancelación. El método `DELETE` no necesita este parámetro.

  El valor del parámetro `cancelQuery` no se utiliza, pero cuando `cancelQuery` está presente, el parámetro `queryId` es obligatorio para identificar qué consulta se va a cancelar.
+ **`queryId`**: contiene el identificador de una consulta específica.

  Cuando se usa con el método `GET` o `POST` y el parámetro `cancelQuery` no está presente, `queryId` hace que se devuelva la información de estado de la consulta específica que identifica. Si el parámetro `cancelQuery` está presente, se cancela la consulta específica que `queryId` identifica.

  Cuando se usa con el método `DELETE`, `queryId` siempre indica que se debe cancelar una consulta específica.
+ **`silent`**: solo se usa al cancelar una consulta. Si se establece en `true`, hace que la cancelación se produzca de forma silenciosa.

## Campos de respuesta a la solicitud de estado
<a name="access-graph-opencypher-status-response-fields"></a>

**Campos de respuesta de estado si no se proporciona el identificador de una consulta específica**
+ **acceptedQueryCount**— El número de consultas que se han aceptado pero que aún no se han completado, incluidas las consultas de la cola.
+ **runningQueryCount**— El número de consultas de OpenCypher que se están ejecutando actualmente.
+ **queries**: una lista de las consultas de openCypher actuales.

**Campos de respuesta de estado para una consulta específica**
+ **queryId**: un identificador GUID de la consulta. Neptune asigna automáticamente este valor de identificador a cada consulta o también puede asignar su propio identificador (consulte [Inserte un identificador personalizado en una consulta de Neptune Gremlin o SPARQL](features-query-id.md)).
+ **queryString**: la consulta enviada. Esta se trunca en 1024 caracteres, si supera este número.
+ **queryEvalStats**— Estadísticas de esta consulta:
  + **waited**: indica cuánto tiempo esperó la consulta, en milisegundos.
  + **elapsed**: el número de milisegundos que la consulta lleva en ejecución.
  + **cancelled**: `True` indica que la consulta se ha cancelado o `False` que no se ha cancelado.

## Ejemplos de solicitudes de estado y respuestas
<a name="access-graph-opencypher-status-samples"></a>
+ **Solicitud del estado de todas las consultas, incluidas las que están en espera:**

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

  *Respuesta:*

  ```
  {
    "acceptedQueryCount" : 0,
    "runningQueryCount" : 0,
    "queries" : [ ]
  }
  ```
+ **Solicitud del estado de todas las consultas, **sin** incluir las que están en espera:**

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

  *Respuesta*:

  ```
  {
    "acceptedQueryCount" : 0,
    "runningQueryCount" : 0,
    "queries" : [ ]
  }
  ```
+ **Solicitud del estado de una sola consulta:**

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

  *Respuesta*:

  ```
  {
    "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
    }
  }
  ```
+ **Solicitudes para cancelar una consulta**

  1. Uso de `POST`:

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

  *Respuesta*:

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

  2. Uso de `GET`:

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

  *Respuesta*:

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

  3. Uso de `DELETE`:

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

  *Respuesta*:

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