בדף הזה מוסבר איך להשתמש בממשק ה-API לניהול של צרכני השירות, כדי להציג ולשנות את המגבלות על המכסות שנאכפות על צרכנים פרטיים בשירות שלכם.
חשוב שתכירו קודם את המודל של מכסות השירות כדי שתוכלו להבין טוב יותר את המונחים שמופיעים במדריך הזה.
אם אתם כותבים קוד שמשתמש ב-Service Infrastructure API, אנחנו ממליצים להשתמש באחת מספריות הלקוח שלנו. תוכלו להיעזר במדריך הזה ולהשתמש בפקודה curl כדי להתנסות ב-API בלי להגדיר סביבת פיתוח מלאה לאפליקציות.
הצגת מכסת השירות
כדי להציג את המדדים והמגבלות של מכסת השירות:
כדי להשתמש ב-
gcurl, מריצים את פקודתaliasהבאה עם טוקן אימות:alias gcurl='curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"'מידע נוסף זמין במאמר בנושא הפעלת Service Usage API.
כדי להציג את כל מגבלות המכסה של כל המדדים שחלים על צרכן מסוים, משתמשים בשיטה הבאה:
gcurl https://serviceconsumermanagement.googleapis.com/v1beta1/services/SERVICE_NAME/projects/PROJECT_ID/consumerQuotaMetricsמחליפים את מה שכתוב בשדות הבאים:
-
SERVICE_NAME: השם של השירות. -
PROJECT_ID: המזהה של פרויקט הצרכן שמעניין אתכם.
התשובה שתוחזר תכיל את רשימת המדדים שהוגדרו על ידי השירות. לכל מדד יופיעו רשימת המגבלות שחלות על הצרכן הזה, הערכים של המגבלות האלה והשינויים מברירת המחדל. זוהי דוגמה לתשובה:
{ "metrics": [ { "name": "services/myservice.appspot.com/projects/consumer-project-id/consumerQuotaMetrics/airport_requests", "metric": "airport_requests", "displayName": "Airport Requests", "consumerQuotaLimits": [ { "name": "services/myservice.appspot.com/projects/consumer-project-id/consumerQuotaMetrics/airport_requests/limits/%2Fmin%2Fproject", "metric": "airport_requests", "unit": "1/min/{project}", "quotaBuckets": [ { "effectiveLimit": "5", "defaultLimit": "5", } ] } ], } ] }-
לכל מדד בתגובה יש שדה שם. כדי לבדוק את הגדרות המכסה של מדד מסוים, ולא של כל המדדים, צריך להשתמש בשם שלו בכתובת ה-URL:
gcurl https://serviceconsumermanagement.googleapis.com/v1beta1/METRIC_NAMEמחליפים את
METRIC_NAMEבשם המלא של המדד. לדוגמה:services/myservice.appspot.com/projects/consumer-project-id/consumerQuotaMetrics/airport_requestsלכל מגבלה בתוך המדד יש שדה שם. כדי לבדוק את ההגדרות של מכסה מסוימת במדד מסוים, ולא את כל המגבלות על מדד מסוים או על כל המדדים, צריך להשתמש בשם של המגבלה בכתובת ה-URL:
gcurl https://serviceconsumermanagement.googleapis.com/v1beta1/LIMIT_NAMEמחליפים את
LIMIT_NAMEבשם המלא של המגבלה. לדוגמה:services/myservice.appspot.com/projects/consumer-project-id/consumerQuotaMetrics/airport_requests/limits/%2Fmin%2Fproject
החלת שינויים מברירת המחדל שהגדיר הבעלים של השירות המנוהל
הבעלים או האדמין של השירות יכול להחיל על מגבלה ספציפית של צרכן ספציפי שינויים מברירת המחדל, ובכך להגדיל את המכסה למגבלה הזו.
כדי להחיל שינוי מברירת המחדל שהגדיר הבעלים של שירות מנוהל, אתם צריכים קודם להשתמש באחת מהשיטות שלמעלה כדי למצוא את מגבלת המכסה שאתם רוצים לשנות, ולהשתמש בשדה השם שלה כדי לזהות אותה:
gcurl https://serviceconsumermanagement.googleapis.com/v1beta1/LIMIT_NAME/producerOverrides -d '{"override": {"override_value": "12345"} }'אתם יכולים להשתמש בקריאה הזו כדי להחיל שינוי חדש מברירת המחדל או כדי לעדכן שינוי קיים בערך חדש. כדי להעניק מכסה לא מוגבלת למגבלה מסוימת, יש להשתמש בערך '1-' בתור השינוי מברירת המחדל.
אם הקריאה תסתיים בהצלחה, היא תחזיר מזהה פעולה שמייצג את הפעולה המתמשכת בשרת, בזמן שהבקשה לשינוי המכסה תעבור למערכות הקצה העורפי:
{ "name": "operations/quf.92accba3-6530-4fc1-9a95-c1280d48a6b7" }כדי לבדוק את התקדמות הפעולה, אתם צריכים להשתמש בשם שלה:
gcurl https://serviceconsumermanagement.googleapis.com/v1/OPERATION_NAMEכשהקריאה מחזירה הודעה שכוללת את המחרוזת "done":true, סימן שהפעולה הסתיימה. אם הפעולה נכשלת, ההודעה הזו תכלול גם את פרטי השגיאה.
כדי לבדוק אם שינוי מסוים הוחל, אתם יכולים לחזור על הקריאה לשיטה שמציגה את מגבלת המכסה, עבור המגבלה המסוימת הזו. מגבלת המכסה אמורה לכלול עכשיו את השדה
producerOverride.
אילוץ של שינויים משמעותיים במכסה
אם האכיפה של השינוי מברירת המחדל תגרום לירידה של המכסה בשיעור של יותר מ-10%, הקריאה תידחה, כאמצעי בטיחות למניעת ירידה מהירה מדי במכסה. כדי להתעלם מההגבלה הזו, צריך להשתמש בדגל האילוץ:
gcurl https://serviceconsumermanagement.googleapis.com/v1beta1/LIMIT_NAME/producerOverrides -d '{"override": {"override_value": "0"}, "force": true}'
החלת שינויים מברירת המחדל למכסה של אזור או תחום
מגבלות מכסה מסוימות נאכפות לפי אזור (region) או לפי תחום (zone). האינדיקציה לכך היא הימצאות של /{region} או /{zone} ביחידת המגבלה.
החלה של שינוי מברירת המחדל על מגבלה כזו תשנה את המכסה הבסיסית לכל האזורים או התחומים. אם אתם רוצים לשנות את המכסה רק לאזור או לתחום מסוימים, אתם צריכים להשתמש בשדה המיקום:
gcurl https://serviceconsumermanagement.googleapis.com/v1beta1/LIMIT_NAME/producerOverrides -d '{"override": {"override_value": "135", "dimensions": {"region": "asia-south1"} } }'