Package google.rpc

Indice

ErrorInfo

Descrive la causa dell'errore con i dettagli strutturati.

Esempio di 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 errore che viene restituito quando si cerca 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 di errore sono univoci all'interno di un determinato dominio di errori. Deve contenere al massimo 63 caratteri e deve 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 dell'errore è in genere il nome del servizio registrato dello strumento o del prodotto che genera l'errore. Esempio: "pubsub.googleapis.com". Se l'errore viene generato da un'infrastruttura comune, il dominio dell'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 relativi a questo errore.

Le chiavi devono corrispondere a /[a-zA-Z0-9-_]/ ed essere limitate a 64 caratteri. Quando identifichi il valore attuale di un limite superato, le unità devono essere contenute nella chiave, non nel valore. Ad esempio, invece di {"instanceLimit": "100/request"}, deve 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 "sql table", "spazio di archiviazione sul cloud bucket", "file", "Google calendar"; oppure l'URL del tipo della risorsa: ad esempio "type.googleapis.com/google.pubsub.v1.Topic".

resource_name

string

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

owner

string

Il proprietario della risorsa (facoltativo). ad esempio "user:" o "project:".

description

string

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