כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של
Apigee X. מידע
מה
אפשר להשתמש בו כדי לשנות באופן דינמי את מספר הבקשות שנותר שמותר לפי המדיניות בנושא מכסת יעד. בדרך כלל משתמשים במדיניות הזו כדי להקטין את מספר המכסות הנוכחי של מדיניות המכסה, במקום להמתין שהמכסות יתאפסו.
לדוגמה, מדיניות מכסת היעד מגבילה מפתח ל-1,000 בקשות בשבוע. עד היום השני בשבוע, המפתח כבר הגיע למגבלה הזו. אפשר להשתמש במדיניות איפוס המכסה כדי לנכות 500 בקשות ממונה המכסות, וכך לאפשר 500 בקשות נוספות בשארית השבוע. בסוף השבוע, מדיניות המכסה תתאפס והמפתח יחזור ל-1, 000 בקשות בשבוע.
מידע נוסף על מדיניות המכסה זמין במאמר מדיניות המכסה. כדאי גם לקרוא את הפוסט הזה בקהילה לגבי שימוש במדיניות איפוס המכסה.
טעימות
דוגמאות קוד המדיניות הבאות ממחישות איך לאפס מוני מכסות:
איפוס מונה ברירת המחדל
<ResetQuota name="resetQuota"> <Quota name="MyQuotaPolicy"> <Identifier name="_default"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
המדיניות 'איפוס מכסה' מציינת את מדיניות היעד של המכסה באמצעות המאפיין name של התג <Quota>. בדוגמה שלמעלה, היעד הוא המדיניות MyQuotaPolicy.
בכל כללי המדיניות לאיפוס מכסות חובה לעדכן את התג <Identifier> כדי לציין את המונה במדיניות המכסה. כברירת מחדל, למדיניות המכסה יש מונה יחיד, אלא אם מדיניות המכסה כוללת גם את התג <Identifier>. בדוגמה הזו, במדיניות מכסת היעד לא נעשה שימוש בתג <Identifier>, לכן צריך לציין את המאפיין name בתור _default.
הרכיב <Allow> מציין את הערך שמשמש להפחתת מספר המכסות הנוכחי במדיניות היעד. בדוגמה הזו, מספר המכסות הוקטן ב-100 כדי לאפשר 100 בקשות נוספות למדיניות המכסה. כשהמדיניות בנושא מכסת יעד מתאפסת, השינוי הזה נמחק.
זוהי ההגדרה של מדיניות מכסת היעד:
<Quota name="MyQuotaPolicy"> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
שימוש בחומר עזר
<ResetQuota name="resetQuota"> <Quota ref="request.header.quotapolicy"> <Identifier name="_default"> <Allow ref="request.header.allowquota" /> </Identifier> </Quota> </ResetQuota>
בדוגמה הזו מעבירים את השם של מדיניות המכסה ומשנים את מספר המכסות ככותרות של הבקשה. לאחר מכן תוכלו להפנות למשתני התהליך שמכילים את הערכים האלה במדיניות 'איפוס המכסה'.
ציון המזהה
<ResetQuota name="resetQuota"> <Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"> <Allow>100</Allow> </Identifier> </Quota> </ResetQuota>
אם במדיניות target Quota צוין התג <Identifier>, אפשר לציין את אותו הערך בתג <Identifier> במדיניות איפוס המכסה, כדי לעדכן מספר ספציפי של מכסות. שימו לב איך התג <Identifier> במדיניות המכסה שבהמשך תואם לערך שצוין במדיניות איפוס המכסה:
<Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"/> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </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>
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
בטבלה הבאה מפורטים המאפיינים שמשותפים לכל רכיבי ההורה של המדיניות:
מאפיין | התיאור | ברירת המחדל | נוכחות |
---|---|---|---|
name |
השם הפנימי של המדיניות. הערך של המאפיין אפשר להשתמש באלמנט |
לא רלוונטי | נדרש |
continueOnError |
צריך להגדיר את הערך צריך להגדיר את הערך |
false | אופציונלי |
enabled |
צריך להגדיר את הערך צריך להגדיר את הערך |
true | אופציונלי |
async |
המאפיין הזה הוצא משימוש. |
false | הוצא משימוש |
רכיב <DisplayName>
יש להשתמש במאפיין הזה בנוסף למאפיין name
כדי להוסיף למדיניות
בכלי לעריכת שרת ה-proxy לניהול ממשק משתמש עם שם אחר בשפה טבעית.
<DisplayName>Policy Display Name</DisplayName>
ברירת המחדל |
לא רלוונטי אם משמיטים את הרכיב הזה, המערכת משתמשת בערך של מאפיין |
---|---|
נוכחות | אופציונלי |
תיאור | מחרוזת |
רכיב <Quota>
מזהה את המדיניות בנושא מכסת יעד שצריך לעדכן את המונה שלה.
<Quota name="quotaName" ref="request.header.quotapolicy"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
ברירת מחדל: | לא רלוונטי |
נוכחות: | נדרש |
סוג: | לא רלוונטי |
מאפיינים
מאפיין | התיאור | ברירת המחדל | נוכחות |
---|---|---|---|
name |
מציין את שם המדיניות בנושא מכסת היעד. |
לא רלוונטי | אופציונלי |
ר' | משתנה זרימה שמכיל את השם של המדיניות בנושא מכסת יעד. אם מציינים גם את ref וגם את name, אז ref מקבל עדיפות. אם ref לא מפוענח בזמן הריצה, ייעשה שימוש ב-name. | לא רלוונטי | אופציונלי |
רכיב <Quota>/<Identifier>
משתנה שמשמש לזיהוי ייחודי של המונה אם במדיניות target Quota צוין התג <Identifier>.
<Quota name="quotaName"> <Identifier name="identifierName" ref="request.header.identifier"> <Allow>100</Allow> </Identifier> </Quota>
ברירת מחדל: | לא רלוונטי |
נוכחות: | נדרש |
סוג: | מחרוזת |
מאפיינים
מאפיין | התיאור | ברירת המחדל | נוכחות |
---|---|---|---|
name |
מציין את השם של מזהה הספירה במדיניות מכסת היעד. למדיניות מכסות שלא משתמשת בתג <Identifier>, צריך לציין את הערך _default. |
לא רלוונטי | אופציונלי |
ר' |
משתנה זרימה שמכיל את השם של מזהה הספירה במדיניות בנושא מכסת יעד. אם ציינת גם את ref וגם את name, אז ref מקבל עדיפות. אם ref לא מפוענח בזמן הריצה, ייעשה שימוש ב-name. |
לא רלוונטי | אופציונלי |
אלמנט <Quota>/<Identifier>/<Allow>
מציין את הסכום להקטנת המונה. צריך לציין <Allow>, אחרת המדיניות לא תשנה את המכסה.
<Identifier name="identifierName" ref="request.header.identifier"> <Allow ref="request.header.allowquota">100</Allow> </Identifier>
ברירת מחדל: | לא רלוונטי |
נוכחות: | נדרש |
סוג: | מספר שלם |
מאפיינים
מאפיין | התיאור | ברירת המחדל | נוכחות |
---|---|---|---|
ר' |
משתנה זרימה שמכיל את השינוי בספירת המכסות במדיניות בנושא מכסת יעד. |
לא רלוונטי | אופציונלי |
אלמנט <Quota>/<Identifier>/<Class>
מציין את המחלקה שבה יתעדכן מונה המכסות. מידע נוסף על השימוש במחלקה יחד עם מדיניות Quota זמין במדיניות המכסה.
<Identifier name="_default"> <Class ref="request.header.classIdentifier"> <Allow>200</Allow> </Class> </Identifier>
ברירת מחדל: | לא רלוונטי |
נוכחות: | אופציונלי |
סוג: | לא רלוונטי |
מאפיינים
מאפיין | התיאור | ברירת המחדל | נוכחות |
---|---|---|---|
ר' |
הפניה למשתנה הזרימה שמכיל את המחלקה למכסה לעדכון. |
לא רלוונטי | אופציונלי |
הפניה לשגיאות
בקטע הזה מתוארים קודי התקלות והודעות השגיאה שמוחזרים, ומשתני השגיאה שמוגדרים על ידי Edge כשהמדיניות הזו גורמת לשגיאה. חשוב לדעת אם אתם מפתחים כללים לתיקון תקלות. מידע נוסף זמין במאמר מה צריך לדעת על שגיאות מדיניות ועל טיפול בפגמים.
שגיאות בזמן ריצה
השגיאות האלה יכולות להתרחש כשהמדיניות מופעלת.
קוד שגיאה | סטטוס HTTP | סיבה | תיקון |
---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 | מדיניות המכסה שצוינה ברכיב <Quota> של המדיניות בנושא איפוס המכסה לא מוגדרת בשרת ה-proxy של ה-API ולכן לא זמינה במהלך התהליך. הרכיב <Quota>
הוא חובה ומזהה את המדיניות בנושא מכסות יעד שצריך לעדכן את המונה שלה
באמצעות המדיניות 'איפוס מכסה'. |
build |
policies.resetquota.FailedToResolveAllowCountRef |
לא רלוונטי | לא ניתן לפענח לערך את ההפניה למשתנה שמכיל את מספר ההרשאה ברכיב <Allow>
של המדיניות. זהו רכיב חובה ומציין את הסכום להקטנה במונה. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 | לא ניתן לפענח את המשתנה שמוזכר במאפיין ref ברכיב <Quota> . |
build |
שגיאות בפריסה
השגיאות האלה יכולות להתרחש כשפורסים שרת proxy שכולל את המדיניות הזו.
שם השגיאה | סיבה | תיקון |
---|---|---|
InvalidCount |
אם ערך הספירה שצוין ברכיב <Allow> במדיניות איפוס המכסה אינו מספר שלם,
הפריסה של שרת ה-proxy של ה-API תיכשל.
|
build |