REST Resource: projects.configs.waiters

Resource: Penunggu

Resource Waiter menunggu beberapa kondisi akhir dalam resource RuntimeConfig terpenuhi sebelum ditampilkan kembali. Misalnya, Anda memiliki sistem terdistribusi dengan setiap node menulis ke resource Variabel yang menunjukkan kesiapan node sebagai bagian dari proses startup.

Kemudian, Anda mengonfigurasi resource Waiter dengan kondisi keberhasilan yang ditetapkan untuk menunggu hingga sejumlah node melakukan check in. Setelah itu, aplikasi Anda akan menjalankan beberapa kode arbitrer setelah kondisi terpenuhi dan pelayan berhasil ditampilkan.

Setelah dibuat, resource Waiter tidak dapat diubah.

Untuk mempelajari lebih lanjut cara menggunakan waiter, baca dokumentasi Membuat Waiter.

Representasi JSON
{
  "name": string,
  "timeout": string,
  "failure": {
    object(EndCondition)
  },
  "success": {
    object(EndCondition)
  },
  "createTime": string,
  "done": boolean,
  "error": {
    object(Status)
  }
}
Kolom
name

string

Nama resource Waiter, dalam format:

projects/[PROJECT_ID]/configs/[CONFIG_NAME]/waiters/[WAITER_NAME]

[PROJECT_ID] harus berupa ID project Google Cloud yang valid, [CONFIG_NAME] harus berupa resource RuntimeConfig yang valid, [WAITER_NAME] harus cocok dengan spesifikasi segmen RFC 1035, dan panjang [WAITER_NAME] harus kurang dari 64 byte.

Setelah membuat resource Waiter, Anda tidak dapat mengubah nama resource.

timeout

string (Duration format)

[Wajib] Menentukan waktu tunggu pelayan dalam detik, dimulai dari saat metode waiters().create dipanggil. Jika waktu ini berlalu sebelum kondisi keberhasilan atau kegagalan terpenuhi, waiter akan gagal dan menetapkan kode error ke DEADLINE_EXCEEDED.

Durasi dalam detik dengan maksimal sembilan digit pecahan, yang diakhiri dengan 's'. Contoh: "3.5s".

failure

object(EndCondition)

[Opsional] Kondisi kegagalan waiter ini. Jika kondisi ini terpenuhi, done akan ditetapkan ke true dan kode error akan ditetapkan ke ABORTED. Kondisi kegagalan lebih diutamakan daripada kondisi keberhasilan. Jika kedua kondisi terpenuhi, kegagalan akan ditunjukkan. Nilai ini bersifat opsional; jika tidak ada kondisi kegagalan yang ditetapkan, satu-satunya skenario kegagalan adalah waktu tunggu habis.

success

object(EndCondition)

[Wajib] Kondisi keberhasilan. Jika kondisi ini terpenuhi, done akan ditetapkan ke true dan nilai error akan tetap tidak ditetapkan. Kondisi kegagalan lebih diutamakan daripada kondisi keberhasilan. Jika kedua kondisi terpenuhi, kegagalan akan ditunjukkan.

createTime

string (Timestamp format)

Hanya output. Momen saat resource Penunggu ini dibuat. Menambahkan nilai timeout ke instance ini akan menghasilkan batas waktu tunggu untuk waiter.

Stempel waktu dalam format RFC3339 UTC "Zulu", akurat hingga nanodetik. Contoh: "2014-10-02T15:01:23.045123456Z".

done

boolean

Hanya output. Jika nilainya false, artinya pelayan masih menunggu salah satu kondisinya terpenuhi.

Jika benar, pelayan telah selesai. Jika waiter selesai karena waktu tunggu habis atau gagal, error akan ditetapkan.

error

object(Status)

Hanya output. Jika waiter berakhir karena kegagalan atau waktu tunggu habis, nilai ini akan ditetapkan.

EndCondition

Kondisi yang ditunggu oleh resource Waiter.

Representasi JSON
{
  "cardinality": {
    object(Cardinality)
  }
}
Kolom
cardinality

object(Cardinality)

Kardinalitas EndCondition.

Kardinalitas

Kondisi Kardinalitas untuk resource Penunggu. Kondisi kardinalitas terpenuhi jika jumlah variabel dalam awalan jalur yang ditentukan mencapai jumlah yang telah ditentukan. Misalnya, jika Anda menetapkan kondisi Kardinalitas dengan path ditetapkan ke /foo dan jumlah jalur ditetapkan ke 2, variabel berikut akan memenuhi kondisi dalam resource RuntimeConfig:

  • /foo/variable1 = "value1"
  • /foo/variable2 = "value2"
  • /bar/variable3 = "value3"

Namun, kondisi yang sama tidak akan terpenuhi dengan number yang ditetapkan ke 3 karena hanya ada 2 jalur yang dimulai dengan /foo. Kondisi kardinalitas bersifat rekursif; semua sub-pohon di bawah awalan jalur tertentu dihitung.

Representasi JSON
{
  "path": string,
  "number": number
}
Kolom
path

string

Akar sub-pohon variabel yang akan dipantau. Misalnya, /foo.

number

number

Variabel angka di bagian path yang harus ada untuk memenuhi kondisi ini. Jika tidak ditentukan, setelan defaultnya adalah 1.

Metode

create

Membuat resource Penunggu.

delete

Menghapus waiter dengan nama yang ditentukan.

get

Mendapatkan informasi tentang satu pelayan.

list

Mencantumkan waiter dalam konfigurasi yang diberikan.

testIamPermissions

Menampilkan izin yang dimiliki pemanggil pada resource yang ditentukan.