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 saat ini pada kebijakan Kuota target daripada menunggu hitungan kuota direset.
Misalnya, kebijakan Kuota target membatasi developer hingga 1.000 permintaan per minggu. Dengan hari kedua minggu ini, developer telah mencapai batas ini. Menggunakan kebijakan Reset Kuota mengurangi 500 dari penghitung kuota mereka untuk memungkinkan 500 permintaan tambahan untuk sisa dalam minggu tersebut. Di akhir minggu, kebijakan Kuota akan direset, dan developer kembali ke 1.000 permintaan untuk seminggu.
Lihat Kebijakan kuota untuk informasi selengkapnya tentang kebijakan Kuota. Lihat juga ini postingan komunitas tentang penggunaan kebijakan Reset Kuota.
Contoh
Contoh kode kebijakan ini menggambarkan 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 Quota target menggunakan atribut name dari tag <Quota>. Pada contoh di atas, kebijakan MyQuotaPolicy adalah target.
Semua kebijakan Kuota Reset memerlukan tag <Identifier> untuk menentukan di kebijakan Quota untuk diperbarui. Secara {i>default<i}, kebijakan Kuota memiliki satu penghitung, kecuali jika kebijakan Kuota juga menyertakan tag <Identifier>. Dalam contoh ini, kebijakan Kuota target tidak menggunakan tag <Identifier>, jadi Anda menentukan atribut name sebagai _default.
Elemen <Allow> menentukan nilai yang digunakan untuk mengurangi jumlah kuota saat ini pada kebijakan target. Di sini misalnya, jumlah kuota dikurangi 100, untuk memungkinkan 100 permintaan lagi ke Kuota target lebih lanjut. 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 kuotanya , sebagai header dalam permintaan. Anda kemudian dapat mereferensikan variabel alur yang berisi dalam kebijakan Reset Kuota.
Menentukan ID
<ResetQuota name="resetQuota"> <Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Jika kebijakan Kuota target menentukan tag <Identifier>, Anda dapat tentukan nilai yang sama ke tag <Identifier> dari Reset Quota kebijakan untuk memperbarui jumlah kuota tertentu. Perhatikan bagaimana tag <Identifier> pada target Kebijakan kuota di bawah cocok dengan nilai yang ditentukan dalam kebijakan Reset Kuota:
<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>
<ResetQuota> atribut
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
Tabel berikut menjelaskan atribut yang umum untuk semua elemen induk kebijakan:
Atribut | Deskripsi | Default | Ketersediaan |
---|---|---|---|
name |
Nama internal kebijakan. Nilai atribut Secara opsional, gunakan elemen |
T/A | Wajib |
continueOnError |
Tetapkan ke Setel ke |
salah | Opsional |
enabled |
Setel ke Setel ke |
true | Opsional |
async |
Atribut ini tidak digunakan lagi. |
salah | Tidak digunakan lagi |
<DisplayName> elemen
Gunakan selain atribut name
untuk memberi label kebijakan di
editor proxy UI 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 |
<Quota> elemen
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 |
---|---|---|---|
nama |
Menentukan nama kebijakan Kuota target. |
T/A | Opsional |
referensi | Variabel flow yang berisi nama kebijakan Kuota target. Jika ref dan name ditetapkan, maka ref akan diprioritaskan. Jika ref berisi tidak di-resolve saat runtime, maka name akan digunakan. | T/A | Opsional |
<Quota>/<Identifier> elemen
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 |
---|---|---|---|
nama |
Menentukan nama ID jumlah dalam kebijakan Kuota target. Untuk Kuota kebijakan yang tidak menggunakan tag <Identifier>, tentukan _default. |
T/A | Opsional |
referensi |
Variabel flow yang berisi nama ID jumlah di Quota target lebih lanjut. Jika ref dan name ditetapkan, maka ref akan diprioritaskan. Jika ref tidak di-resolve di runtime, maka name akan digunakan. |
T/A | Opsional |
<Quota>/<Identifier>/<Allow> elemen
Menentukan jumlah yang akan mengurangi 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 flow yang berisi perubahan pada jumlah kuota dalam kebijakan Kuota target. |
T/A | Opsional |
<Quota>/<Identifier>/<Class> elemen
Menentukan class tempat penghitung Kuota diperbarui. Untuk informasi selengkapnya tentang penggunaan class dengan Kebijakan kuota, lihat Kuota kebijakan kami.
<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 |
Rujukan ke variabel flow yang berisi class kuota yang akan diperbarui. |
T/A | Opsional |
Referensi error
This section describes the fault codes and error messages that are returned and fault variables that are set by Edge when this policy triggers an error. This information is important to know if you are developing fault rules to handle faults. To learn more, see What you need to know about policy errors and Handling faults.
Runtime errors
These errors can occur when the policy executes.
Fault code | HTTP status | Cause | Fix |
---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 | The Quota policy specified in the <Quota> element of the Reset Quota policy
is not defined in the API proxy and thus is not available during the flow. The <Quota>
element is mandatory and identifies the target Quota policy whose counter should be updated
through the Reset Quota policy. |
build |
policies.resetquota.FailedToResolveAllowCountRef |
N/A | The reference to the variable containing the allow count in the <Allow> element
of the policy cannot be resolved to a value. This element is mandatory and specifies the amount
to decrease the quota counter. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 | The variable referenced by the ref attribute in the <Quota> element
cannot be resolved. |
build |
Deployment errors
These errors can occur when you deploy a proxy containing this policy.
Error name | Cause | Fix |
---|---|---|
InvalidCount |
If the count value specified in the <Allow> element of the Reset Quota Policy is not an integer,
then the deployment of the API proxy fails.
|
build |