Package google.rpc

Indice

ErrorInfo

Descrive la causa dell'errore con i dettagli strutturati.

Esempio di un errore quando si contatta l'API "pubsub.googleapis.com" quando non è abilitata:

{ "reason": "API_DISABLED"
  "domain": "googleapis.com"
  "metadata": {
    "resource": "projects/123",
    "service": "pubsub.googleapis.com"
  }
}

Questa risposta indica che l'API pubsub.googleapis.com non è abilitata.

Esempio di un errore che viene restituito quando si tenta di creare un'istanza Spanner in una regione non disponibile:

{ "reason": "STOCKOUT"
  "domain": "spanner.googleapis.com",
  "metadata": {
    "availableRegions": "us-central1,us-east2"
  }
}
Campi
reason

string

Il motivo dell'errore. Si tratta di un valore costante che identifica la causa prossima dell'errore. I motivi degli errori sono univoci all'interno di un particolare dominio di errori. Deve contenere al massimo 63 caratteri e corrispondere a un'espressione regolare di [A-Z][A-Z0-9_]+[A-Z0-9], che rappresenta UPPER_SNAKE_CASE.

domain

string

Il raggruppamento logico a cui appartiene il "motivo". Il dominio di errore è in genere il nome del servizio registrato dello strumento o del prodotto che genera l'errore. Esempio: "pubsub.googleapis.com". Se l'errore è generato da un'infrastruttura comune, il dominio di errore deve essere un valore globalmente univoco che identifica l'infrastruttura. Per l'infrastruttura API di Google, il dominio di errore è "googleapis.com".

metadata

map<string, string>

Ulteriori dettagli strutturati su questo errore.

Le chiavi devono corrispondere a /[a-zA-Z0-9-_]/ e avere una lunghezza massima di 64 caratteri. Quando identifichi il valore corrente di un limite superato, le unità devono essere contenute nella chiave, non nel valore. Ad esempio, invece di {"instanceLimit": "100/request"}, dovrebbe essere restituito come {"instanceLimitPerRequest": "100"}, se il client supera il numero di istanze che è possibile creare in una singola richiesta (batch).

ResourceInfo

Descrive la risorsa a cui si accede.

Campi
resource_type

string

Un nome per il tipo di risorsa a cui si accede, ad esempio "tabella SQL", "bucket di spazio di archiviazione sul cloud", "file", "calendario Google"; o l'URL del tipo di risorsa, ad esempio "type.googleapis.com/google.pubsub.v1.Topic".

resource_name

string

Il nome della risorsa a cui si accede. Ad esempio, il nome di un calendario condiviso: "example.com_4fghdhgsrgh@group.calendar.google.com", se l'errore attuale è google.rpc.Code.PERMISSION_DENIED.

owner

string

Il proprietario della risorsa (facoltativo). Ad esempio, "user:" o "progetto:".

description

string

Descrive quale errore si è verificato durante l'accesso a questa risorsa. Ad esempio, l'aggiornamento di un progetto cloud potrebbe richiedere l'autorizzazione writer sul progetto Developer Console.