All Products
Search
Document Center

Serverless App Engine:CreateGreyTagRoute

Last Updated:Jun 11, 2026

Membuat aturan rilis canary untuk aplikasi Spring Cloud atau Dubbo.

Deskripsi operasi

Catatan

You can currently configure only one canary rule per application.

Coba sekarang

Coba API ini di OpenAPI Explorer tanpa perlu penandatanganan manual. Panggilan yang berhasil akan secara otomatis menghasilkan contoh kode SDK sesuai dengan parameter Anda. Unduh kode tersebut dengan kredensial bawaan yang aman untuk penggunaan lokal.

Test

RAM authorization

Tabel berikut menjelaskan otorisasi yang diperlukan untuk memanggil API ini. Anda dapat menentukannya dalam kebijakan Resource Access Management (RAM). Kolom pada tabel dijelaskan sebagai berikut:

  • Action: Aksi yang dapat digunakan dalam elemen Action pada pernyataan kebijakan izin RAM untuk memberikan izin guna melakukan operasi tersebut.

  • API: API yang dapat Anda panggil untuk melakukan aksi tersebut.

  • Access level: Tingkat akses yang telah ditentukan untuk setiap API. Nilai yang valid: create, list, get, update, dan delete.

  • Resource type: Jenis resource yang mendukung otorisasi untuk melakukan aksi tersebut. Ini menunjukkan apakah aksi tersebut mendukung izin tingkat resource. Resource yang ditentukan harus kompatibel dengan aksi tersebut. Jika tidak, kebijakan tersebut tidak akan berlaku.

    • Untuk API dengan izin tingkat resource, jenis resource yang diperlukan ditandai dengan tanda bintang (*). Tentukan Nama Sumber Daya Alibaba Cloud (ARN) yang sesuai dalam elemen Resource pada kebijakan.

    • Untuk API tanpa izin tingkat resource, ditampilkan sebagai All Resources. Gunakan tanda bintang (*) dalam elemen Resource pada kebijakan.

  • Condition key: Kunci kondisi yang didefinisikan oleh layanan. Kunci ini memungkinkan kontrol granular, berlaku baik hanya untuk aksi maupun untuk aksi yang terkait dengan resource tertentu. Selain kunci kondisi spesifik layanan, Alibaba Cloud menyediakan serangkaian common condition keys yang berlaku di semua layanan yang didukung RAM.

  • Dependent action: Aksi dependen yang diperlukan untuk menjalankan aksi tersebut. Untuk menyelesaikan aksi tersebut, pengguna RAM atau role RAM harus memiliki izin untuk melakukan semua aksi dependen.

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.

ParameterTipeContohDeskripsi
conditionStringORMode kondisi untuk aturan canary. Nilai valid:
- AND: Semua kondisi dalam daftar kondisi harus terpenuhi.
- OR: Setidaknya satu kondisi dalam daftar kondisi harus terpenuhi.
pathString/pathJalur permintaan untuk aturan canary Spring Cloud.
itemsArray of itemsDaftar kondisi.

Parameter items.

ParameterTipeContohDeskripsi
nameStringtestNama parameter.
condString==Operator perbandingan. Nilai valid meliputi: >, <, >=, <=, ==, dan !=.
typeStringcookieTipe perbandingan. Nilai valid:
- param: Parameter.
- cookie: Cookie.
- header: Header.
valueStringtestNilai untuk dibandingkan dengan nilai aktual yang diambil berdasarkan type dan name yang ditentukan.
operatorStringrawvalueOperator yang digunakan untuk perbandingan. Nilai valid:
- rawvalue: Perbandingan langsung.
- list: Pencocokan daftar.
- mod: Modulo 100.
- deterministic_proportional_steaming_division: Persentase.
  • Parameter DubboRules.

ParameterTipeContohDeskripsi
conditionStringORMode kondisi untuk aturan canary. Nilai valid:
- AND: Semua kondisi dalam daftar kondisi harus terpenuhi.
- OR: Setidaknya satu kondisi dalam daftar kondisi harus terpenuhi.
methodNameStringechoNama metode layanan Dubbo.
serviceNameStringcom.alibaba.edas.boot.EchoServiceNama layanan Dubbo.
versionString1.0.0Versi layanan Dubbo.
itemsArray of itemsDaftar kondisi.
groupStringDUBBOGrup layanan Dubbo yang diterapkan aturan canary.

Parameter items.

ParameterTipeContohDeskripsi
indexInteger0Indeks parameter. 0 menunjukkan parameter pertama.
exprString.nameEkspresi 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").
condString==Operator perbandingan. Nilai valid meliputi: >, <, >=, <=, ==, dan !=.
valueStringtestNilai untuk dibandingkan dengan nilai aktual yang diambil berdasarkan expr dan index yang ditentukan.
operatorStringrawvalueOperator 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.

  • This parameter is not returned if the request is successful.

  • If the request fails, see the Error codes list in this topic for more information.

Code

string

The HTTP status code. Valid values:

  • 2xx: The request was successful.

  • 3xx: The request was redirected.

  • 4xx: A client error occurred.

  • 5xx: A server error occurred.

200

Success

boolean

Indicates whether the request was successful. Valid values:

  • true: The request was successful.

  • false: The request failed.

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.