רישום ביומן ומעקב אחר קריאות ל-Cloud Load Balancing

בדף הזה מוסבר איך להגדיר את Cloud Logging ו-Cloud Monitoring ולהשתמש בהם עם קריאות של Service Extensions ל-Cloud Load Balancing.

רישום ביומן

בקטע הזה מוסבר על רישום ביומן של קריאות חוזרות (callouts) של מאזן עומסים של אפליקציות.

הפעלת רישום ביומן בשירות לקצה העורפי

כדי להפעיל רישום ביומן של קריאות חוזרות (callouts) של מאזן העומסים של האפליקציה, צריך להפעיל את הרישום ביומן בשירות לקצה העורפי שהוא היעד של הבקשה (ולא בשירות לקצה העורפי שמשויך לתוסף).

כדי להפעיל את הרישום ביומן של שירות היעד לקצה העורפי, משתמשים בפקודה gcloud compute backend-services update.

gcloud compute backend-services update BACKEND_SERVICE \
    --enable-logging \
    --logging-sample-rate=RATE \
    --region=REGION \
    --logging-optional=LOGGING_OPTIONAL_MODE \
    --logging-optional-fields=OPTIONAL_FIELDS

מחליפים את מה שכתוב בשדות הבאים:

  • ‫BACKEND_SERVICE: השם של שירות הקצה העורפי
  • ‫RATE: ערך מ-0.0 עד 1.0, כאשר 0.0 מציין שאף בקשה לא נרשמת ביומן ו-1.0 מציין ש-100% מהבקשות נרשמות ביומן. ערך ברירת המחדל הוא 1.0. ההגדרה הזו משפיעה רק כשמשתמשים בה עם הפרמטר enable-logging. אם משמיטים את enable-logging, הרישום ביומן מושבת.
  • ‫REGION: האזור של הקצה העורפי
  • ‫LOGGING_OPTIONAL_MODE: הפעלת רישום ביומן של שדות אפשרויות באחד מהמצבים הבאים:

    • INCLUDE_ALL_OPTIONAL כולל את כל השדות האופציונליים.
    • EXCLUDE_ALL_OPTIONAL (ברירת המחדל) לא כולל את כל שדות האפשרויות.
    • ‫CUSTOM כולל רשימה מותאמת אישית של שדות אופציונליים.
  • ‫OPTIONAL_FIELDS: רשימה מופרדת בפסיקים של שדות אופציונליים כשבוחרים במצב CUSTOM

אחרי שמפעילים את הרישום ביומן בשירות לקצה העורפי, בקשות HTTP או HTTPS נרשמות ביומן באמצעות בקשות הרישום ביומן של Cloud Logging.

כדי לראות את היומנים, נכנסים לדף Logs Explorer במסוף Google Cloud .

מידע נוסף מופיע בדפים "מעקב ופתרון בעיות" במסמכי התיעוד של מאזן העומסים של אפליקציות, כמו רישום ביומן ומעקב אחרי מאזן עומסים פנימי של אפליקציות.

הודעות ביומן של שירות לקצה העורפי

באופן כללי, רשומות ביומן של מאזן העומסים של האפליקציות מכילות מידע שימושי למעקב אחרי תנועת ה-HTTP או ה-HTTPS ולניפוי באגים. הרשומות ביומן מכילות את סוגי המידע הבאים:

  • מידע שמוצג ברוב היומנים של Google Cloud , כמו חומרת האירוע, מזהה הפרויקט, מספר הפרויקט וחותמת הזמן, כפי שמתואר ביומן LogEntry.
  • שדות ביומן HttpRequest.

יומני הבקשות של מאזני עומסים מסוג HTTP ו-HTTPS מכילים אובייקט service_extension_info במטען הייעודי (payload) בפורמט JSON של רשומת היומן של מאזן העומסים, עם המידע הבא:

שדה סוג תיאור
backend_target_name מחרוזת השם של יעד הקצה העורפי של התוסף.
backend_target_type מחרוזת סוג היעד לקצה העורפי.
chain מחרוזת שם שרשרת התוספים במשאב של תוסף השירות שתואם לבקשה.
extension מחרוזת השם של התוסף בשרשרת התוספים.
failed_open בוליאני כשההגדרה failOpen של התוסף מוגדרת לערך true, הערך true במדד הזה מציין שהעיבוד נמשך כשהזמן הקצוב לתפוגה של התוסף חלף או כשהתוסף נכשל.

רלוונטי רק למאזני עומסים חיצוניים אזוריים של אפליקציות (ALB), למאזני עומסים פנימיים אזוריים של אפליקציות (ALB) ולמאזני עומסים פנימיים חוצי-אזורים של אפליקציות (ALB).

grpc_status טיפוסים בני מנייה (enum) הסטטוס האחרון בסטרימינג של gRPC. מידע נוסף זמין במאמר קודי סטטוס של gRPC.
per_processing_request_info מערך רשימה של נתונים סטטיסטיים מסוג ProcessingRequest ל-ext_proc תוספים או נתונים סטטיסטיים מסוג CheckRequest ל-ext_authz תוספים שמתרחשים בסטרימינג של gRPC.
per_processing_request_info[].event_type טיפוסים בני מנייה (enum) סוג האירוע של ProcessingRequest. יכול להיות אחד מהערכים הבאים: REQUEST_HEADERS,‏ REQUEST_BODY,‏ RESPONSE_HEADERS או RESPONSE_BODY.
per_processing_request_info[].latency משך זמן משך הזמן מרגע שליחת הבייט הראשון של ההודעה ProcessingRequest לתוסף ועד לקבלת הבייט האחרון של ההודעה ProcessingResponse.
per_processing_request_info[].processing_effect טיפוסים בני מנייה (enum) תוצאת העיבוד של כל אירוע בבקשת עיבוד.

רלוונטי רק למאזני עומסים אזוריים חיצוניים של אפליקציות, למאזני עומסים אזוריים פנימיים של אפליקציות ולמאזני עומסים פנימיים חוצי-אזורים של אפליקציות.

יכול להיות אחד מהערכים הבאים:

  • ‫NONE: מציין שהתוכן לא השתנה.
  • ‫NONE_FAILED_OPEN: מציין שלא בוצעו שינויים כי התוסף המשיך לפעול במקרה שגיאה.
  • ‫CONTENT_MODIFIED: מציין שהתוכן השתנה בעקבות בקשה לשינוי נתונים שיושמה בהצלחה.
  • ‫IMMEDIATE_RESPONSE: מציין שהתוסף שלח תשובה מיידית כדי לעצור את כל העיבוד הנוסף.
  • ‫MUTATION_REJECTED: מציין שהתוסף ביקש לפחות שינוי אחד שאסור לבצע, והמשך העיבוד הופסק. הודעות השגיאה המתאימות נרשמות ביומן.
  • ‫UNSPECIFIED: מציין שההשפעה של העיבוד לא ידועה.
per_processing_request_info[].processing_effect_details מחרוזת כאשר processing_effect הוא MUTATION_REJECTED, הפרטים על הסיבה לדחיית המוטציה.

רלוונטי רק למאזני עומסים אזוריים חיצוניים של אפליקציות, למאזני עומסים אזוריים פנימיים של אפליקציות ולמאזני עומסים פנימיים של אפליקציות בכמה אזורים.

resource מחרוזת שם המשאב של התוסף

מעקב

בקטע הזה מוסבר איך לעקוב אחרי ה-callouts שהוגדרו באמצעות Service Extensions ל-Cloud Load Balancing.

הצגת לוח בקרה של Monitoring

מאזני עומסים של אפליקציות מייצאים נתוני מעקב אל Cloud Monitoring.

אפשר להשתמש במדדי Monitoring למטרות הבאות:

  • הערכת ההגדרות, השימוש והביצועים של מאזן עומסים
  • פתרון בעיות
  • שיפור ניצול המשאבים וחוויית המשתמש

כדי לצפות במרכז בקרה מוגדר מראש:

  1. נכנסים לדף Dashboards overview במסוף Google Cloud .

    כניסה לדף Dashboards overview

  2. בקטע Categories, לוחצים על GCP.
    • כדי להציג רשימה של מרכזי הבקרה של כל מאזני העומסים, ברשימה GCP Dashboards לוחצים על מרכז הבקרה שנקרא Google Cloud Load Balancers. כדי להציג את לוח הבקרה של מאזן עומסים ספציפי, מאתרים את מאזן העומסים ברשימה ולוחצים על השם שלו.
    • כדי לראות את מרכזי הבקרה המוגדרים מראש רק של מאזני העומסים, בוחרים את מרכז הבקרה המתאים.

בנוסף למרכזי הבקרה המוגדרים מראש ב-Monitoring, אתם יכולים ליצור מרכזי בקרה בהתאמה אישית, להגדיר התראות ולשלוח שאילתות לגבי המדדים באמצעות Cloud Monitoring API.

מידע נוסף מופיע בדפים "מעקב ופתרון בעיות" במסמכי התיעוד של מאזן העומסים של אפליקציות, כמו רישום ביומן ומעקב אחרי מאזן עומסים פנימי של אפליקציות.

מעקב אחרי מדדים של נכסי יתרונות מרכזיים

אתם יכולים לעקוב אחרי המדדים הבאים של שירותי קצה עורפי של קריאות חוזרות.

בגרסת טרום-השקה (Preview), אתם יכולים לעקוב אחרי המדדים הבאים של תוספים בכל הסוגים של מאזני עומסים של אפליקציות. למדדים האלה יש את הקידומת networkservices.googleapis.com/extension. הקידומת לא מופיעה ברשומות שבטבלה הבאה.

בטבלה הבאה מפורטים סוג המדד, השם המוצג, הסוג, היחידה והתיאור של כל מדד:

סוג המדד השם המוצג
סוג, טיפוס, יחידה
תיאור
invocation_count מספר ההפעלות של התוסף
DELTA, INT64, 1
מספר ההפעלות שנשלחו לתוסף.
invocation_latencies זמני האחזור של הפעלת התוסף
DELTA, DISTRIBUTION, ms
ההתפלגות מחושבת לפי זמן האחזור של כל הפעלה של התוסף. רלוונטי רק לתוספי יתרונות מרכזיים. לא נתמך בפלאגינים.
sent_chunks_count מספר החלקים שנשלחו על ידי התוסף
DELTA, INT64, 1
רלוונטי רק לאירועים מסוג request_body ו-response_body. מספר מקטעי הנתונים שנשלחו לתוסף.
received_chunks_count מספר החלקים שהתוסף קיבל
DELTA, INT64, 1
רלוונטי רק לאירועים מסוג request_body ו-response_body. מספר החלקים שהתקבלו מהתוסף.
failed_open_count ‫Extension failed invocations with fail-open
DELTA, INT64, 1
מספר הפעמים שהפעלה נכשלה כשהמערכת הוגדרה להמשך פעילות במקרה שגיאה, והבקשה המשיכה.
mutation_rejections_count מספר הדחיות של שינויים בתוספים
DELTA, INT64, 1
מספר הקריאות שביקשו שינויים בכותרת, בגוף או בטריילר, אבל נדחו. הדחייה יכולה לקרות מכל מיני סיבות, למשל אם המוטציה לא תקינה או חורגת ממגבלות הגודל.
sent_bytes_count מספר הבייטים שנשלחו לתוסף
DELTA, INT64, By
מספר הבייטים שנשלחו לתוסף.
received_bytes_count מספר הבייטים שהתקבלו מהתוסף
DELTA, INT64, By
מספר הבייטים שהתקבלו מהתוסף.

אפשר גם לעקוב אחרי המדדים הבאים. למדדים האלה יש את הקידומת loadbalancing.googleapis.com/. התחילית מושמטת מהרשומות בטבלה.

סוג המדד השם המוצג
סוג, טיפוס, יחידה
תיאור
‫https/backend_request_count,
https/external/regional/backend_request_count,
https/internal/backend_request_count
מספר הבקשות לקצה העורפי
DELTA, INT64, 1
מספר הפעמים שבהן מתבצעת קריאה לשירות לקצה העורפי של ה-callout ממאזן העומסים של האפליקציות.
‫https/backend_request_bytes_count,
https/external/regional/backend_request_bytes_count,
https/internal/backend_request_bytes_count
בייטים של בקשות לקצה העורפי
DELTA, INT64, By
מספר הבייטים שנשלחו ממאזן העומסים לשירות ה-callout לקצה העורפי.
‫https/backend_response_bytes_count,
https/external/regional/backend_response_bytes_count,
https/internal/backend_response_bytes_count
בייטים של תגובת קצה עורפי
DELTA, INT64, By
מספר הבייטים שמאזן העומסים קיבל מקצה העורפי של התוסף.
‫https/backend_latencies,
https/external/regional/backend_latencies,
https/internal/backend_latencies
זמן אחזור בקצה העורפי
DELTA, DISTRIBUTION, ms
התפלגות שמחושבת לפי סכום זמני האחזור של כל הפעלה של תוסף בין מאזן העומסים לבין שירות לקצה העורפי. נדגם כל 60 שניות.

המאמרים הבאים