Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến
Tài liệu về Apigee X. thông tin

Nội dung
Dùng để sửa đổi linh động số lượng yêu cầu còn lại mà chính sách Hạn mức mục tiêu cho phép. Bạn thường dùng chính sách này để giảm số lượng hạn mức hiện tại của chính sách Hạn mức mục tiêu thay vì đợi số lượng hạn mức được đặt lại.
Ví dụ: Chính sách về hạn mức mục tiêu giới hạn nhà phát triển được phép gửi 1.000 yêu cầu mỗi tuần. Theo ngày thứ hai của tuần, nhà phát triển đã đạt đến giới hạn này. Sử dụng chính sách Đặt lại hạn mức trừ đi 500 từ bộ đếm hạn mức để cho phép thêm 500 yêu cầu cho phần còn lại của trong tuần. Vào cuối tuần, chính sách Hạn mức sẽ được đặt lại và nhà phát triển sẽ quay lại mức 1.000 yêu cầu trong tuần.
Xem Chính sách về hạn mức để biết thêm thông tin về chính sách về Hạn mức. Xem thêm bài viết này bài đăng trên thẻ Cộng đồng về cách sử dụng chính sách Đặt lại hạn mức.
Mẫu
Các mã mẫu về chính sách sau minh hoạ cách đặt lại bộ đếm hạn mức:
Đặt lại bộ đếm mặc định
<ResetQuota name="resetQuota"> <Quota name="MyQuotaPolicy"> <Identifier name="_default"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Chính sách Đặt lại hạn mức chỉ định chính sách về Hạn mức mục tiêu bằng cách sử dụng thuộc tính name của thẻ <Capacity>. Trong ví dụ trên, chính sách MyCapacityPolicy là mục tiêu.
Tất cả các chính sách Đặt lại hạn mức đều yêu cầu thẻ <Identifier> để chỉ định trong chính sách về hạn mức để cập nhật. Theo mặc định, chính sách Hạn mức có một bộ đếm duy nhất, trừ phi chính sách về Hạn mức cũng bao gồm thẻ <Identifier>. Trong ví dụ này, chính sách Hạn mức mục tiêu không sử dụng thẻ <Identifier>, vì vậy, bạn chỉ định thuộc tính name thành _default.
Phần tử <Allow> chỉ định giá trị dùng để giảm số lượng hạn mức hiện tại cho chính sách mục tiêu. Trong phần này ví dụ: số lượng hạn mức giảm đi 100 để cho phép thêm 100 yêu cầu vào hạn mức mục tiêu . Khi bạn đặt lại chính sách Hạn mức mục tiêu, thay đổi này sẽ bị loại bỏ.
Dưới đây là định nghĩa về chính sách Hạn mức mục tiêu:
<Quota name="MyQuotaPolicy"> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Sử dụng tệp đối chiếu
<ResetQuota name="resetQuota"> <Quota ref="request.header.quotapolicy"> <Identifier name="_default"> <Allow ref="request.header.allowquota" /> </Identifier> </Quota> </ResetQuota>
Trong ví dụ này, bạn chuyển tên của chính sách về hạn mức mục tiêu và nội dung thay đổi về hạn mức dưới dạng tiêu đề trong yêu cầu. Sau đó, bạn có thể tham chiếu các biến luồng chứa trong chính sách Đặt lại hạn mức.
Chỉ định giá trị nhận dạng
<ResetQuota name="resetQuota"> <Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
Nếu chính sách Hạn mức mục tiêu chỉ định thẻ <Identifier>, thì bạn có thể chỉ định cùng một giá trị cho thẻ <Identifier> của Đặt lại hạn mức để cập nhật số lượng hạn mức cụ thể. Lưu ý cách thẻ <Identifier> trong mục tiêu Chính sách về hạn mức bên dưới khớp với giá trị được chỉ định trong chính sách Đặt lại hạn mức:
<Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"/> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Tham chiếu phần tử
Tài liệu tham khảo phần tử mô tả các phần tử và thuộc tính của chính sách Đặt lại hạn mức.
<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> thuộc tính
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
Bảng sau đây mô tả những thuộc tính chung cho tất cả phần tử mẹ của chính sách:
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
name |
Tên nội bộ của chính sách. Giá trị của thuộc tính (Không bắt buộc) Bạn có thể dùng phần tử |
Không áp dụng | Bắt buộc |
continueOnError |
Đặt thành Đặt thành |
false | Không bắt buộc |
enabled |
Hãy đặt thành Đặt thành |
đúng | Không bắt buộc |
async |
Thuộc tính này không được dùng nữa. |
false | Không được dùng nữa |
<DisplayName> phần tử
Hãy sử dụng cùng với thuộc tính name
để gắn nhãn chính sách trong phần
trình chỉnh sửa proxy giao diện người dùng quản lý có tên ngôn ngữ tự nhiên khác.
<DisplayName>Policy Display Name</DisplayName>
Mặc định |
Không áp dụng Nếu bạn bỏ qua phần tử này, giá trị của thuộc tính |
---|---|
Sự hiện diện | Không bắt buộc |
Loại | Chuỗi |
<Quota> phần tử
Xác định chính sách Hạn mức mục tiêu mà bộ đếm cần được cập nhật.
<Quota name="quotaName" ref="request.header.quotapolicy"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
Mặc định: | Không áp dụng |
Sự hiện diện: | Bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tên |
Nêu tên của chính sách Hạn mức mục tiêu. |
Không áp dụng | Không bắt buộc |
tham chiếu | Biến luồng chứa tên của chính sách Hạn mức mục tiêu. Nếu cả ref và name đều được chỉ định, thì ref sẽ được ưu tiên. Nếu ref có không được phân giải trong thời gian chạy, thì name sẽ được sử dụng. | Không áp dụng | Không bắt buộc |
<Quota>/<Identifier> phần tử
Biến được dùng để xác định duy nhất bộ đếm nếu chính sách Hạn mức mục tiêu chỉ định thẻ <Identifier>.
<Quota name="quotaName"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
Mặc định: | Không áp dụng |
Sự hiện diện: | Bắt buộc |
Loại: | Chuỗi |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tên |
Cho biết tên của giá trị nhận dạng số lượng trong chính sách Hạn mức mục tiêu. Đối với hạn mức chính sách không sử dụng thẻ <Identifier>, hãy chỉ định _default. |
Không áp dụng | Không bắt buộc |
tham chiếu |
Biến luồng chứa tên của giá trị nhận dạng số lượng trong Hạn mức mục tiêu . Nếu cả ref và name được chỉ định, thì ref sẽ được ưu tiên. Nếu ref không phân giải tại thời gian chạy, sau đó name sẽ được sử dụng. |
Không áp dụng | Không bắt buộc |
<Quota>/<Identifier>/<Allow> phần tử
Chỉ định số tiền để giảm bộ đếm hạn mức. Bạn phải chỉ định <Allow>, nếu không, chính sách sẽ không sửa đổi hạn mức.
<Identifier name="identifierName" ref="request.header.identifier"> <Allow ref="request.header.allowquota">100</Allow> </Identifier>
Mặc định: | Không áp dụng |
Sự hiện diện: | Bắt buộc |
Loại: | Số nguyên |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tham chiếu |
Biến luồng chứa thay đổi về số lượng hạn mức trong chính sách về hạn mức mục tiêu. |
Không áp dụng | Không bắt buộc |
<Quota>/<Identifier>/<Class> phần tử
Chỉ định lớp được cập nhật Bộ đếm hạn mức. Để biết thêm thông tin về cách sử dụng lớp với Chính sách về hạn mức, hãy xem phần Hạn mức .
<Identifier name="_default"> <Class ref="request.header.classIdentifier"> <Allow>200</Allow> </Class> </Identifier>
Mặc định: | Không áp dụng |
Sự hiện diện: | Không bắt buộc |
Loại: | Không áp dụng |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
---|---|---|---|
tham chiếu |
Tham chiếu đến biến luồng chứa lớp hạn mức cần cập nhật. |
Không áp dụng | Không bắt buộc |
Tham chiếu lỗi
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 |