Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Gestione degli errori
Questa sezione descrive in che modo gli errori vengono restituiti dall'API Di inserimento Zerobus e come i client devono gestirli.
Formato risposta di errore
REST (JSON)
Le risposte di errore vengono restituite come JSON con un codice di stato HTTP appropriato:
{
"error_code": "NOT_FOUND",
"message": "Table \"catalog.schema.table\" cannot be found."
}
| Campo | Tipo | Descrizione |
|---|---|---|
| error_code | string | Codice di errore leggibile dal computer che identifica la categoria di errore. Usare questa opzione per determinare come gestire l'errore a livello di codice. |
| message | string | Descrizione leggibile dell'errore. Può includere informazioni di diagnostica aggiuntive per la risoluzione dei problemi. Non analizzare questo campo a livello di codice. Il relativo formato può cambiare senza preavviso. |
gPRC
Le risposte agli errori usano codici di stato gRPC standard, recapitati tramite trailer di risposta:
| Trailer | Descrizione |
|---|---|
| grpc-status | Codice di stato numerico (ad esempio, 3 per INVALID_ARGUMENT). Usare questa opzione per determinare come gestire l'errore a livello di codice. |
| messaggio grpc | Descrizione leggibile dell'errore. Può includere informazioni di diagnostica aggiuntive per la risoluzione dei problemi. Non analizzare questo campo a livello di codice. Il relativo formato può cambiare senza preavviso. |
Codici di errore
Nella tabella seguente sono elencati tutti i codici di errore restituiti dall'API Di inserimento Zerobus, i codici a livello di protocollo corrispondenti e il comportamento consigliato del client.
Errori del client
Questi errori indicano un problema con la richiesta. Non riprovare senza modificare la richiesta.
| Codice errore (REST) | Codice gRPC | Stato HTTP | Descrizione | Azione consigliata |
|---|---|---|---|---|
INVALID_PARAMETER_VALUE |
INVALID_ARGUMENT(3) |
400 | La richiesta contiene input non valido o malformato, ad esempio un campo obbligatorio mancante, uno schema non valido o un formato di record non supportato. | Correggere la richiesta e inviare di nuovo. Esaminare il message campo per informazioni dettagliate su quale parametro non è valido. |
NOT_FOUND |
NOT_FOUND(5) |
404 | La risorsa richiesta non esiste. Ad esempio, non è possibile trovare la tabella specificata. | Verificare che il nome della risorsa sia corretto e che esista. |
NOT_IMPLEMENTED |
UNIMPLEMENTED(12) |
501 | L'operazione richiesta non è supportata. Ad esempio, la tabella usa una funzionalità o un formato di dati non supportato. | Non riprovare. Controllare il message campo per informazioni dettagliate su ciò che non è supportato. |
Errori di autenticazione e autorizzazione
Questi errori indicano problemi con l'identità o le autorizzazioni del chiamante. Non riprovare con le stesse credenziali.
| Codice errore (REST) | Codice gRPC | Stato HTTP | Descrizione | Azione consigliata |
|---|---|---|---|---|
UNAUTHENTICATED |
UNAUTHENTICATED(16) |
401 | La richiesta non dispone di credenziali di autenticazione valide. Il token potrebbe essere mancante, vuoto, scaduto o non valido. | Aggiornare o fornire un token di autenticazione valido e riprovare. |
PERMISSION_DENIED |
PERMISSION_DENIED(7) |
403 | Il chiamante non dispone di privilegi sufficienti per eseguire l'operazione richiesta sulla risorsa specificata. | Verificare che il chiamante disponga dei privilegi necessari (ad esempio, MODIFY, SELECT, USE_CATALOG, , USE_SCHEMA) nella risorsa di destinazione. |
Errori del server
Questi errori indicano un problema sul lato server. Riprovare con ritardo esponenziale e variabilità casuale.
| Codice errore (REST) | Codice gRPC | Stato HTTP | Descrizione |
|---|---|---|---|
UNAVAILABLE |
UNAVAILABLE(14) |
503 | Il servizio non è temporaneamente in grado di gestire la richiesta. Si tratta in genere di una condizione temporanea. Riprovare con backoff esponenziale e instabilità. |
RESOURCE_EXHAUSTED |
RESOURCE_EXHAUSTED(8) |
429 | Il servizio rifiuta le richieste a causa dei limiti delle risorse. Ridurre la concorrenza delle richieste, se possibile. Riprovare con backoff esponenziale e instabilità. |
INTERNAL_ERROR |
INTERNAL_ERROR(13) |
500 | Si è verificato un errore interno imprevisto. Non riprovare. Contatta il supporto tecnico e fornisci la risposta completa all'errore per la diagnosi. |