Membuat aturan rilis canary untuk aplikasi Spring Cloud atau Dubbo.
Deskripsi operasi
You can currently configure only one canary rule per application.
Coba sekarang
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
sae:CreateGreyTagRoute |
create |
*全部资源
|
None | None |
Sintaks permintaan
POST /pop/v1/sam/tagroute/greyTagRoute HTTP/1.1
Parameter permintaan
|
Parameter |
Type |
Required |
Description |
Example |
| AppId |
string |
Yes |
ID aplikasi. |
7802c49a-67bc-4167-8369-9a9c003c**** |
| Name |
string |
Yes |
Nama aturan canary. Nama dapat berisi hingga 64 karakter dan hanya dapat mengandung huruf kecil, digit, tanda hubung (-), dan karakter Tionghoa. Harus diawali dengan huruf kecil dan diakhiri dengan huruf kecil atau digit. |
dubbo-echo |
| Description |
string |
No |
Deskripsi aturan canary. Deskripsi dapat berisi hingga 64 karakter. |
Canary Release - Regions |
| ScRules |
string |
No |
Aturan canary untuk aplikasi Spring Cloud. Parameter ini wajib untuk aplikasi Spring Cloud dan tidak dapat digunakan bersama parameter DubboRules. |
[{"condition":"OR","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"param","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}] |
| DubboRules |
string |
No |
Aturan canary untuk aplikasi Dubbo. Parameter ini wajib untuk aplikasi Dubbo dan tidak dapat digunakan bersama parameter ScRules. |
[{"condition":"OR","group":"DUBBO","items":[{"cond":"==","expr":".key1","index":0,"operator":"rawvalue","value":"value1"},{"cond":"==","expr":".key2","index":0,"operator":"rawvalue","value":"value2"}],"methodName":"echo","serviceName":"com.alibaba.edas.boot.EchoService","version":"1.0.0"}] |
| AlbRules |
string |
No |
Aturan canary untuk aplikasi yang menggunakan entri rute gerbang ALB. |
[{"condition":"AND","items":[{"cond":"==","name":"grey","operator":"rawvalue","type":"sourceIp","value":"127.0.0.1"},{"cond":"==","name":"grey","operator":"rawvalue","type":"cookie","value":"true"},{"cond":"==","name":"grey","operator":"rawvalue","type":"header","value":"true"}],"path":"/post-echo/hi"}] |
Parameter ScRules.
| Parameter | Tipe | Contoh | Deskripsi |
| condition | String | OR | Mode kondisi untuk aturan canary. Nilai valid: - AND: Semua kondisi dalam daftar kondisi harus terpenuhi. - OR: Setidaknya satu kondisi dalam daftar kondisi harus terpenuhi. |
| path | String | /path | Jalur permintaan untuk aturan canary Spring Cloud. |
| items | Array of items | Daftar kondisi. |
Parameter items.
| Parameter | Tipe | Contoh | Deskripsi |
| name | String | test | Nama parameter. |
| cond | String | == | Operator perbandingan. Nilai valid meliputi: >, <, >=, <=, ==, dan !=. |
| type | String | cookie | Tipe perbandingan. Nilai valid: - param: Parameter. - cookie: Cookie. - header: Header. |
| value | String | test | Nilai untuk dibandingkan dengan nilai aktual yang diambil berdasarkan type dan name yang ditentukan. |
| operator | String | rawvalue | Operator yang digunakan untuk perbandingan. Nilai valid: - rawvalue: Perbandingan langsung. - list: Pencocokan daftar. - mod: Modulo 100. - deterministic_proportional_steaming_division: Persentase. |
Parameter DubboRules.
| Parameter | Tipe | Contoh | Deskripsi |
| condition | String | OR | Mode kondisi untuk aturan canary. Nilai valid: - AND: Semua kondisi dalam daftar kondisi harus terpenuhi. - OR: Setidaknya satu kondisi dalam daftar kondisi harus terpenuhi. |
| methodName | String | echo | Nama metode layanan Dubbo. |
| serviceName | String | com.alibaba.edas.boot.EchoService | Nama layanan Dubbo. |
| version | String | 1.0.0 | Versi layanan Dubbo. |
| items | Array of items | Daftar kondisi. | |
| group | String | DUBBO | Grup layanan Dubbo yang diterapkan aturan canary. |
Parameter items.
| Parameter | Tipe | Contoh | Deskripsi |
| index | Integer | 0 | Indeks parameter. 0 menunjukkan parameter pertama. |
| expr | String | .name | Ekspresi nilai parameter. Nilai valid: - Jika dikosongkan: Mengambil nilai parameter saat ini. - .name: Mengambil properti name parameter, setara dengan args0.getName().- .isEnabled(): Mengambil properti enabled parameter, setara dengan args0.isEnabled().- [0]: Jika parameter berupa array, ekspresi ini mengambil elemen pertama array, setara dengan args0[0]. Ekspresi ini tidak diawali dengan titik (.).- .get(0): Jika parameter berupa List, ekspresi ini mengambil elemen pertama daftar, setara dengan args0.get(0).- .get("key"): Jika parameter berupa Map, ekspresi ini mengambil nilai untuk kunci yang ditentukan, setara dengan args0.get("key"). |
| cond | String | == | Operator perbandingan. Nilai valid meliputi: >, <, >=, <=, ==, dan !=. |
| value | String | test | Nilai untuk dibandingkan dengan nilai aktual yang diambil berdasarkan expr dan index yang ditentukan. |
| operator | String | rawvalue | Operator yang digunakan untuk perbandingan. Nilai valid: - rawvalue: Perbandingan langsung. - list: Pencocokan daftar. - mod: Modulo 100. - deterministic_proportional_steaming_division: Persentase. |
Elemen respons
|
Element |
Type |
Description |
Example |
|
object |
The data returned. |
||
| RequestId |
string |
The request ID. |
9D29CBD0-45D3-410B-9826-52F86F90**** |
| Message |
string |
The response message. |
success |
| TraceId |
string |
The trace ID. You can use this ID to query the call details. |
0a98a02315955564772843261e**** |
| Data |
object |
The details of the canary release rule. |
|
| GreyTagRouteId |
integer |
The globally unique ID of the canary release rule. |
16 |
| ErrorCode |
string |
The error code.
|
|
| Code |
string |
The HTTP status code. Valid values:
|
200 |
| Success |
boolean |
Indicates whether the request was successful. Valid values:
|
true |
Contoh
Respons sukses
JSONformat
{
"RequestId": "9D29CBD0-45D3-410B-9826-52F86F90****",
"Message": "success",
"TraceId": "0a98a02315955564772843261e****",
"Data": {
"GreyTagRouteId": 16
},
"ErrorCode": "",
"Code": "200",
"Success": true
}
Kode kesalahan
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | InvalidParameter.NotEmpty | You must specify the parameter %s. | |
| 400 | InvalidParameter.Obviously | The specified parameter is invalid {%s}. | |
| 400 | InvalidParameter.WithMessage | The parameter is invalid {%s}: %s | |
| 400 | Application.ChangerOrderRunning | An application change process is in progress. Please try again later. |
Lihat Error Codes untuk daftar lengkap.
Catatan rilis
Lihat Release Notes untuk daftar lengkap.