Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Apa
Gunakan untuk mengubah secara dinamis sisa jumlah permintaan yang diizinkan oleh kebijakan Kuota target. Anda biasanya menggunakan kebijakan ini untuk mengurangi jumlah kuota kebijakan Kuota target saat ini, daripada menunggu jumlah kuota direset.
Misalnya, kebijakan Target Kuota membatasi developer hingga 1.000 permintaan per minggu. Pada hari kedua dalam seminggu, developer telah mencapai batas ini. Gunakan kebijakan Reset Quota untuk mengurangi 500 dari penghitung kuota agar menerima 500 permintaan tambahan untuk sisa minggu ini. Di akhir minggu, kebijakan Kuota akan direset, dan developer akan kembali mencapai 1.000 permintaan dalam seminggu.
Lihat Kebijakan kuota untuk mengetahui informasi selengkapnya tentang kebijakan Kuota. Lihat juga postingan komunitas ini tentang cara menggunakan kebijakan Reset Kuota.
Contoh
Contoh kode kebijakan ini mengilustrasikan cara mereset penghitung kuota:
Reset Penghitung Default
<ResetQuota name="resetQuota"> <Quota name="MyQuotaPolicy"> <Identifier name="_default"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Kebijakan Reset Quota menentukan kebijakan Kuota target menggunakan atribut name dari tag <Quota>. Pada contoh di atas, kebijakan MyQuotaPolicy adalah targetnya.
Semua kebijakan Reset Quota memerlukan tag <Identifier> untuk menentukan penghitung dalam kebijakan Quota untuk diperbarui. Secara default, kebijakan Kuota memiliki satu penghitung, kecuali jika kebijakan Kuota juga menyertakan tag <Identifier>. Dalam contoh ini, kebijakan Kuota target tidak menggunakan tag <Identifier>, sehingga Anda menetapkan atribut name sebagai _default.
Elemen <Allow> menentukan nilai yang digunakan untuk mengurangi jumlah kuota saat ini pada kebijakan target. Dalam contoh ini, jumlah kuota dikurangi 100, untuk memungkinkan 100 permintaan lebih banyak ke kebijakan Kuota target. Saat kebijakan Kuota target direset, perubahan ini akan dihapus.
Berikut adalah definisi kebijakan Kuota target:
<Quota name="MyQuotaPolicy"> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Menggunakan Referensi
<ResetQuota name="resetQuota"> <Quota ref="request.header.quotapolicy"> <Identifier name="_default"> <Allow ref="request.header.allowquota" /> </Identifier> </Quota> </ResetQuota>
Dalam contoh ini, Anda meneruskan nama kebijakan Kuota target, dan perubahan pada jumlah kuotanya, sebagai header dalam permintaan. Anda kemudian dapat mereferensikan variabel alur yang berisi nilai-nilai ini dalam kebijakan Reset Quota.
Menentukan ID
<ResetQuota name="resetQuota"> <Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Jika kebijakan Quota target menentukan tag <Identifier>, Anda dapat menentukan nilai yang sama pada tag <Identifier> pada kebijakan Reset Quota untuk memperbarui jumlah kuota tertentu. Perhatikan bagaimana tag <Identifier> dalam kebijakan Kuota target di bawah ini cocok dengan nilai yang ditentukan pada kebijakan Reset Quota:
<Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"/> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Referensi elemen
Referensi elemen menjelaskan elemen dan atribut kebijakan Reset Quota.
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1"> <DisplayName>Reset Quota 1</DisplayName> <Quota name="quotaName" ref="request.header.quotapolicy"> <Identifier name="identifierName" ref="request.header.identifier"> <Class ref="request.header.classIdentifier" /> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Atribut <ResetQuota>
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
Tabel berikut menjelaskan atribut yang sama untuk semua elemen induk kebijakan:
Atribut | Deskripsi | Default | Ketersediaan |
---|---|---|---|
name |
Nama internal kebijakan. Nilai atribut Atau, gunakan elemen |
T/A | Wajib |
continueOnError |
Setel ke Setel ke |
false | Opsional |
enabled |
Setel ke Setel ke |
true | Opsional |
async |
Atribut ini sudah tidak digunakan lagi. |
false | Tidak digunakan lagi |
Elemen <DisplayName>
Gunakan selain atribut name
untuk memberi label kebijakan di
editor proxy UI pengelolaan dengan nama natural-language yang berbeda.
<DisplayName>Policy Display Name</DisplayName>
Default |
T/A Jika Anda menghapus elemen ini, nilai atribut |
---|---|
Ketersediaan | Opsional |
Jenis | String |
Elemen <Quota>
Mengidentifikasi kebijakan Kuota target yang penghitungnya harus diperbarui.
<Quota name="quotaName" ref="request.header.quotapolicy"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
Default: | T/A |
Kehadiran: | Wajib |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Ketersediaan |
---|---|---|---|
name |
Menentukan nama kebijakan Kuota target. |
T/A | Opsional |
referensi | Variabel alur yang berisi nama kebijakan Kuota target. Jika ref dan name sama-sama ditetapkan, ref akan diprioritaskan. Jika ref tidak me-resolve saat runtime, name akan digunakan. | T/A | Opsional |
Elemen <Quota>/<Identifier>
Variabel yang digunakan untuk mengidentifikasi penghitung secara unik jika kebijakan Kuota target menentukan tag <Identifier>.
<Quota name="quotaName"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
Default: | T/A |
Kehadiran: | Wajib |
Jenis: | String |
Atribut
Atribut | Deskripsi | Default | Ketersediaan |
---|---|---|---|
name |
Menentukan nama ID jumlah dalam kebijakan Kuota target. Untuk kebijakan Kuota yang tidak menggunakan tag <Identifier>, tentukan _default. |
T/A | Opsional |
referensi |
Variabel alur yang berisi nama ID jumlah dalam kebijakan Kuota target. Jika ref dan name sama-sama ditetapkan, ref akan diprioritaskan. Jika ref tidak di-resolve saat runtime, name akan digunakan. |
T/A | Opsional |
Elemen <Quota>/<Identifier>/<Allow>
Menentukan jumlah pengurangan penghitung kuota. Anda harus menentukan <Allow>. Jika tidak, kebijakan tidak akan mengubah kuota.
<Identifier name="identifierName" ref="request.header.identifier"> <Allow ref="request.header.allowquota">100</Allow> </Identifier>
Default: | T/A |
Kehadiran: | Wajib |
Jenis: | Bilangan Bulat |
Atribut
Atribut | Deskripsi | Default | Ketersediaan |
---|---|---|---|
referensi |
Variabel alur yang berisi perubahan pada jumlah kuota dalam kebijakan Kuota target. |
T/A | Opsional |
Elemen <Quota>/<Identifier>/<Class>
Menentukan class yang akan digunakan untuk mengupdate penghitung Kuota. Untuk informasi selengkapnya tentang penggunaan class dengan kebijakan Kuota, lihat Kebijakan kuota.
<Identifier name="_default"> <Class ref="request.header.classIdentifier"> <Allow>200</Allow> </Class> </Identifier>
Default: | T/A |
Kehadiran: | Opsional |
Jenis: | T/A |
Atribut
Atribut | Deskripsi | Default | Ketersediaan |
---|---|---|---|
referensi |
Referensi ke variabel flow yang berisi class kuota yang akan diperbarui. |
T/A | Opsional |
Referensi error
Bagian ini menjelaskan kode kesalahan dan pesan error yang ditampilkan dan variabel kesalahan yang disetel oleh Edge saat kebijakan ini memicu error. Informasi ini penting untuk diketahui apakah Anda mengembangkan aturan kesalahan untuk menangani kesalahan. Untuk mempelajari lebih lanjut, lihat Yang perlu Anda ketahui tentang error kebijakan dan Menangani kesalahan.
Error runtime
Error ini dapat terjadi saat kebijakan dieksekusi.
Kode kesalahan | Status HTTP | Penyebab | Perbaiki |
---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 | Kebijakan Kuota yang ditentukan dalam elemen <Quota> kebijakan Reset Quota tidak ditetapkan dalam proxy API, sehingga tidak tersedia selama alur tersebut. Elemen <Quota> bersifat wajib dan mengidentifikasi kebijakan Kuota target yang penghitungnya harus diperbarui melalui kebijakan Reset Kuota. |
build |
policies.resetquota.FailedToResolveAllowCountRef |
T/A | Referensi ke variabel yang berisi jumlah izin dalam elemen <Allow> kebijakan tidak dapat di-resolve menjadi sebuah nilai. Elemen ini bersifat wajib dan menentukan jumlah pengurangan kuota. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 | Variabel yang direferensikan oleh atribut ref dalam elemen <Quota> tidak dapat di-resolve. |
build |
Error saat deployment
Error ini dapat terjadi saat Anda men-deploy proxy yang berisi kebijakan ini.
Nama error | Penyebab | Perbaiki |
---|---|---|
InvalidCount |
Jika nilai jumlah yang ditentukan dalam elemen <Allow> Kebijakan Kuota Reset bukan bilangan bulat,
deployment proxy API akan gagal.
|
build |