全部产品
Search
文档中心

API Gateway:canary-header

更新时间:Jun 28, 2025

Plugin canary-header menambahkan header tertentu ke permintaan berdasarkan persentase yang ditentukan. Setelah header ditambahkan, rute akan dicocokkan ulang. Anda dapat menggunakan gateway cloud-native dengan plugin ini untuk mengimplementasikan rute berbasis persentase dalam rilis canary tanpa memerlukan permintaan klien membawa header canary.

Bidang

Item konfigurasi

Tipe data

Diperlukan

Nilai default

Deskripsi

weighted_headers

array of object

Ya

-

Header yang akan ditambahkan ke permintaan dan bobot dalam header tersebut.

Tabel berikut menjelaskan item konfigurasi dalam bidang weighted_headers.

Item konfigurasi

Tipe data

Diperlukan

Nilai default

Deskripsi

added_key

string

Ya

-

Kunci dari header yang ingin Anda tambahkan ke permintaan.

added_value

string

Ya

-

Nilai dari header yang ingin Anda tambahkan ke permintaan.

weight

number

Ya

-

Bobot dari header yang ingin Anda tambahkan ke permintaan. Satuan: %. Jumlah total bobot semua header tidak boleh lebih dari 100.

Catatan

Jika total bobot semua header kurang dari 100, selisihnya menunjukkan persentase permintaan yang tidak memiliki header tambahan.

Contoh konfigurasi

Konfigurasi global

Kode contoh berikut menunjukkan bahwa header x-higress-canary:gray ditambahkan ke 30% permintaan, dan header x-higress-canary:base ditambahkan ke 70% permintaan.

weighted_headers: 
- added_key: x-higress-canary
  added_value: gray
  weight: 30
- added_key: x-higress-canary
  added_value: base
  weight: 70

Kode contoh berikut menunjukkan bahwa header x-higress-canary:gray ditambahkan ke 30% permintaan, dan tidak ada header yang ditambahkan ke 70% permintaan.

weighted_headers: 
- added_key: x-higress-canary
  added_value: gray
  weight: 30

Aktifkan plugin untuk rute atau nama domain tertentu

Jika rute route-a cocok, header x-higress-canary:gray ditambahkan ke 30% permintaan, dan header x-higress-canary:base ditambahkan ke 70% permintaan. Setelah header ditambahkan, permintaan akan mencocokkan ulang rute. Sebagai contoh, jika permintaan dari rute bernama route-a-gray dapat diarahkan oleh header x-higress-canary:gray, maka 30% permintaan dari rute route-a cocok dengan rute route-a-gray. Dengan cara ini, rilis canary berbasis persentase dapat diimplementasikan.

# Gunakan bidang _rules_ untuk mengonfigurasi aturan yang lebih rinci.
_rules_:
# Aturan 1: Cocokkan nama rute.
- _match_route_:
  - route-a
  weighted_headers: 
  - added_key: x-higress-canary
    added_value: gray
    weight: 30
  - added_key: x-higress-canary
    added_value: base
    weight: 70
# Aturan 2: Cocokkan nama domain.
- _match_domain_:
  - "*.example.com"
  weighted_headers:
  - added_key: x-custom-header
    added_value: gray
    weight: 30
  - added_key: x-custom-header
    added_value: blue
    weight: 30
  - added_key: x-custom-header
    added_value: base
    weight: 40