ErrorInfo

Menjelaskan penyebab error dengan detail terstruktur.

Contoh error saat menghubungi API "pubsub.googleapis.com" saat API tersebut tidak diaktifkan:

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

Respons ini menunjukkan bahwa pubsub.googleapis.com API tidak diaktifkan.

Contoh error yang ditampilkan saat mencoba membuat instance Spanner di region yang kehabisan stok:

{ "reason": "STOCKOUT"
  "domain": "spanner.googleapis.com",
  "metadata": {
    "availableRegions": "us-central1,us-east2"
  }
}
Representasi JSON
{
  "reason": string,
  "domain": string,
  "metadata": {
    string: string,
    ...
  }
}
Kolom
reason

string

Alasan error. Ini adalah nilai konstanta yang mengidentifikasi penyebab langsung error. Alasan error bersifat unik dalam domain error tertentu. Nilai ini harus berisi maksimal 63 karakter dan cocok dengan ekspresi reguler [A-Z][A-Z0-9_]+[A-Z0-9], yang mewakili UPPER_SNAKE_CASE.

domain

string

Pengelompokan logis yang mencakup "alasan". Domain error biasanya adalah nama layanan terdaftar dari alat atau produk yang menghasilkan error. Contoh: "pubsub.googleapis.com". Jika error dihasilkan oleh beberapa infrastruktur umum, domain error harus berupa nilai unik secara global yang mengidentifikasi infrastruktur tersebut. Untuk infrastruktur Google API, domain error adalah "googleapis.com".

metadata

map (key: string, value: string)

Detail terstruktur tambahan tentang error ini.

Kunci harus cocok dengan ekspresi reguler [a-z][a-zA-Z0-9-_]+, tetapi idealnya menggunakan lowerCamelCase. Selain itu, panjangnya tidak boleh lebih dari 64 karakter. Saat mengidentifikasi nilai saat ini dari batas yang terlampaui, satuan harus ada dalam kunci, bukan nilai. Misalnya, bukan {"instanceLimit": "100/request"}, harus ditampilkan sebagai {"instanceLimitPerRequest": "100"}, jika klien melampaui jumlah instance yang dapat dibuat dalam satu permintaan (batch).

Objek yang berisi daftar pasangan "key": value. Contoh: { "name": "wrench", "mass": "1.3kg", "count": "3" }.