

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.

# Respuestas de Neptune Loader Get-Status
<a name="load-api-reference-status-response"></a>

 El siguiente ejemplo de respuesta de la Get-Status API de Neptune describe la estructura general de la respuesta, explica los distintos campos y sus tipos de datos, así como la gestión de errores y los detalles del registro de errores. 

## Diseño JSON de Neptune Loader Get-Status Response
<a name="load-api-reference-status-response-layout"></a>

El diseño general de la respuesta de estado de un programa de carga es el siguiente:

```
{
    "status" : "200 OK",
    "payload" : {
        "feedCount" : [
            {
                "LOAD_FAILED" : number
            }
        ],
        "overallStatus" : {
            "fullUri" : "s3://bucket/key",
            "runNumber" : number,
            "retryNumber" : number,
            "status" : "string",
            "totalTimeSpent" : number,
            "startTime" : number,
            "totalRecords" : number,
            "totalDuplicates" : number,
            "parsingErrors" : number,
            "datatypeMismatchErrors" : number,
            "insertErrors" : number,
        },
        "failedFeeds" : [
            {
                "fullUri" : "s3://bucket/key",
                "runNumber" : number,
                "retryNumber" : number,
                "status" : "string",
                "totalTimeSpent" : number,
                "startTime" : number,
                "totalRecords" : number,
                "totalDuplicates" : number,
                "parsingErrors" : number,
                "datatypeMismatchErrors" : number,
                "insertErrors" : number,
            }
        ],
        "errors" : {
            "startIndex" : number,
            "endIndex" : number,
            "loadId" : "string,
            "errorLogs" : [ ]
        }
    }
}
```

## Neptune Loader Get-Status `overallStatus` y `failedFeeds` objetos de respuesta
<a name="load-api-reference-status-response-objects"></a>

Las posibles respuestas devueltas para cada fuente fallida, incluidas las descripciones de los errores, son las mismas que para el objeto `overallStatus` de una respuesta `Get-Status`.

Los siguientes campos aparecen en el objeto `overallStatus` de todas las cargas y en el objeto `failedFeeds` de cada fuente fallida:
+ **`fullUri`**: el URI del archivo o archivos que se van a cargar.

  *Tipo:* *string*

  *Formato*: `s3://bucket/key`.
+ **`runNumber`**: el número de ejecución de la carga o fuente. Aumenta cuando se reinicia la carga.

  *Tipo*: *entero largo sin signo*.
+ **`retryNumber`**: el número de reintento de la carga o fuente. Aumenta cuando el programa de carga reintenta automáticamente realizar una carga o procesar una fuente.

  *Tipo*: *entero largo sin signo*.
+ **`status`**: el estado que devuelve la carga o la fuente. `LOAD_COMPLETED` indica una carga correcta sin problemas. Para ver una lista de otros mensajes de estado de carga, consulte [Mensajes de errores y fuente del programa de carga de Neptune](loader-message.md).

  *Tipo:* *string*.
+ **`totalTimeSpent`**: el tiempo, en segundos, dedicado a analizar e insertar datos para la carga o la fuente. No incluye el tiempo dedicado a obtener la lista de archivos de origen.

  *Tipo*: *entero largo sin signo*.
+ **`totalRecords`**: número total de registros que se han cargado o que se ha intentado cargar.

  *Tipo*: *entero largo sin signo*.

  Tenga en cuenta que al cargar desde un archivo CSV, el recuento de registros no se refiere al número de líneas cargadas, sino al número de registros individuales en esas líneas. Tomemos como ejemplo un archivo CSV pequeño como este:

  ```
  ~id,~label,name,team
  'P-1','Player','Stokes','England'
  ```

  Neptune consideraría que este archivo contiene 3 registros:

  ```
  P-1  label Player
  P-1  name  Stokes
  P-1  team  England
  ```
+ **`totalDuplicates`**: el número de registros duplicados que se ha encontrado.

  *Tipo*: *entero largo sin signo*.

  Como en el caso del recuento de `totalRecords`, este valor contiene el número de registros duplicados individuales de un archivo CSV, no el número de líneas duplicadas. Tomemos como ejemplo este archivo CSV pequeño:

  ```
  ~id,~label,name,team
  P-2,Player,Kohli,India
  P-2,Player,Kohli,India
  ```

  El estado devuelto después de cargarlo tendría este aspecto, con un total de 6 registros, de los cuales 3 son duplicados:

  ```
  {
    "status": "200 OK",
    "payload": {
      "feedCount": [
        {
          "LOAD_COMPLETED": 1
        }
      ],
      "overallStatus": {
        "fullUri": "(the URI of the CSV file)",
        "runNumber": 1,
        "retryNumber": 0,
        "status": "LOAD_COMPLETED",
        "totalTimeSpent": 3,
        "startTime": 1662131463,
        "totalRecords": 6,
        "totalDuplicates": 3,
        "parsingErrors": 0,
        "datatypeMismatchErrors": 0,
        "insertErrors": 0
      }
    }
  }
  ```

  En el caso de las cargas de openCypher, se cuenta un duplicado cuando:
  + El programa de carga detecta que una fila de un archivo de nodo tiene un identificador sin un espacio de identificador que es igual a otro valor de identificador sin espacio de identificador, ya sea en otra fila o que pertenezca a un nodo existente.
  + El programa de carga detecta que una fila de un archivo de nodo tiene un identificador con un espacio de identificador que es igual a otro valor de identificador con espacio de identificador, ya sea en otra fila o que pertenezca a un nodo existente.

  Consulte [Consideraciones especiales para cargar datos de openCypher](load-api-reference-load.md#load-api-reference-load-parameters-opencypher).
+ **`parsingErrors`**: el número de errores de análisis encontrados.

  *Tipo*: *entero largo sin signo*.
+ **`datatypeMismatchErrors`**: el número de registros con un tipo de datos que no coincide con los datos proporcionados.

  *Tipo*: *entero largo sin signo*.
+ **`insertErrors`**: el número de registros que no se han podido insertar debido a errores.

  *Tipo*: *entero largo sin signo*.

## Objeto de respuesta Neptune Loader Get-Status `errors`
<a name="load-api-reference-status-errors"></a>

Los errores se dividen en las categorías siguientes:
+ **`Error 400`**: un `loadId` no válido devuelve un error de solicitud incorrecta HTTP `400`. El mensaje describe el error.
+ **`Error 500`**: una solicitud válida que no se puede procesar devuelve un error interno del servidor HTTP `500`. El mensaje describe el error.

Consulte [Mensajes de errores y fuente del programa de carga de Neptune](loader-message.md) para obtener una lista de los mensajes de error y de fuentes devueltos por el programa de carga en caso de errores.

Si se produce un error, se devuelve un objeto JSON `errors` en el elemento `BODY` de la respuesta con los siguientes campos:
+ **`startIndex`**: el índice del primer error incluido.

  *Tipo*: *entero largo sin signo*.
+ **`endIndex`**: el índice del último error incluido.

  *Tipo*: *entero largo sin signo*.
+ **`loadId`**: el identificador de la carga. Puede utilizar este ID para imprimir los errores de la carga si establece el parámetro `errors` en `TRUE`.

  *Tipo:* *string*.
+ **`errorLogs`**: una lista de los errores.

  *Tipo*: *lista*.

## Objeto de respuesta Neptune Loader Get-Status `errorLogs`
<a name="load-api-reference-error-logs"></a>

El objeto `errorLogs` que aparece en `errors` en la respuesta del estado de obtención del programa de carga contiene un objeto que describe cada error mediante los siguientes campos:
+ **`errorCode`**: identifica la naturaleza del error.

  Puede tener uno de los siguientes valores:
  + `PARSING_ERROR`
  + `S3_ACCESS_DENIED_ERROR`
  + `FROM_OR_TO_VERTEX_ARE_MISSING`
  + `ID_ASSIGNED_TO_MULTIPLE_EDGES`
  + `SINGLE_CARDINALITY_VIOLATION`
  + `FILE_MODIFICATION_OR_DELETION_ERROR`
  + `OUT_OF_MEMORY_ERROR`
  + `INTERNAL_ERROR` (se devuelve cuando el programa de carga masiva no puede determinar el tipo de error).
+ **`errorMessage`**: mensaje que describe el error.

  Puede ser un mensaje genérico asociado al código de error o un mensaje específico que contenga detalles, por ejemplo, sobre un from/to vértice que falta o sobre un error de análisis.
+ **`fileName`**: el nombre de la fuente.
+ **`recordNum`**: en el caso de un error de análisis, se trata del número de registro del archivo del registro que no se ha podido analizar. Se establece en cero si el número de registro no es aplicable al error o si no se ha podido determinar.

Por ejemplo, el programa de carga masiva generaría un error de análisis si encontrara una fila fallida como la siguiente en un archivo RDF `nquads`:

```
<http://base#subject> |http://base#predicate> <http://base#true> .
```

Como puede ver, el segundo `http` de la fila anterior debería ir precedido de `<` en lugar de `|`. El objeto de error resultante en `errorLogs` en una respuesta de estado tendría el siguiente aspecto:

```
{
    "errorCode" : "PARSING_ERROR",
    "errorMessage" : "Expected '<', found: |",
    "fileName" : "s3://bucket/key",
    "recordNum" : 12345
},
```