רישום ביומן
אפשר להפעיל, להשבית ולראות יומנים של שירות לקצה העורפי של מאזן עומסים של אפליקציות (ALB) חיצוני. במאזני עומסים חיצוניים של אפליקציות עם קטגוריות של קצה עורפי, הרישום ביומן מופעל באופן אוטומטי ואי אפשר להשבית אותו.
אתם יכולים להפעיל או להשבית את הרישום ביומן לכל שירות לקצה העורפי. אתם יכולים להגדיר אם לתעד את כל הבקשות או רק חלק מהן, שנבחר באופן אקראי.
צריך לוודא שאין החרגה של יומנים שחלה על מאזני עומסים של אפליקציות (ALB) חיצוניים. במאמר מסננים של כיורי יומנים מוסבר איך לוודא שהיומנים של מאזן העומסים החיצוני של האפליקציות מותרים.
דגימה ואיסוף של יומנים
המערכת דוגמת את הבקשות והתגובות התואמות שמטופלות על ידי מכונות וירטואליות (VM) בקצה העורפי של מאזן העומסים. הבקשות שנדגמו מעובדות כדי ליצור יומנים. אתם יכולים לשלוט בחלק מהבקשות שמונפקות כרשומות ביומן, בהתאם לשדה logConfig.sampleRate.
כשהערך של logConfig.sampleRate הוא 1.0 (100%), נוצרים יומנים לכל הבקשות והם נכתבים ב-Cloud Logging.
שדות אופציונליים
רשומות ביומן מכילות שדות חובה ושדות אופציונליים. בקטע מה נרשם ביומן מפורטים השדות האופציונליים והשדות שחובה למלא. כל שדות החובה תמיד כלולים. אתם יכולים לבחור אילו שדות אופציונליים להשאיר.
אם בוחרים באפשרות include all optional, כל השדות האופציונליים בפורמט של רשומת היומן נכללים ביומנים. כשמוסיפים שדות אופציונליים חדשים לפורמט הרשומה, היומנים כוללים באופן אוטומטי את השדות החדשים.
אם בוחרים באפשרות החרגת כל השדות האופציונליים, כל השדות האופציונליים מושמטים.
אם בוחרים באפשרות custom, אפשר לציין את שדות האפשרויות שרוצים לכלול, כמו
tls.protocol,tls.cipher,orcaLoadReport.cpu_utilization,orcaLoadReport.mem_utilization.
למידע על התאמה אישית של שדות אופציונליים, ראו הפעלת רישום ביומן בשירות חדש לקצה העורפי.
הפעלת רישום ביומן בשירות חדש לקצה העורפי
המסוף
במסוף Google Cloud , עוברים לדף איזון עומסים.
לוחצים על השם של מאזן העומסים.
לוחצים על עריכה.
לוחצים על Backend Configuration.
בוחרים באפשרות יצירת שירות לקצה העורפי.
ממלאים את שדות החובה של שירות לקצה העורפי.
בקטע רישום ביומן, מסמנים את התיבה הפעלת רישום ביומן.
מגדירים את החלק של תדירות הדגימה. אפשר להגדיר מספר מ-
0.0עד1.0, כאשר0.0מציין שאף בקשה לא מתועדת ביומן ו-1.0מציין ש-100% מהבקשות מתועדות ביומן. ערך ברירת המחדל הוא1.0.אופציונלי: כדי לכלול את כל השדות האופציונליים ביומנים, בקטע Optional fields לוחצים על Include all optional fields.
כדי לסיים את עריכת השירות לקצה העורפי, לוחצים על Update.
כדי לסיים את עריכת מאזן העומסים, לוחצים על Update.
gcloud
יוצרים שירות לקצה העורפי ומפעילים את הרישום ביומן באמצעות הפקודה gcloud compute backend-services create.
gcloud compute backend-services create BACKEND_SERVICE \
--global \
--enable-logging \
--logging-sample-rate=VALUE \
--load-balancing-scheme=EXTERNAL_MANAGED \
--logging-optional=LOGGING_OPTIONAL_MODE \
--logging-optional-fields=OPTIONAL_FIELDS
הפקודה gcloud compute backend-services create תומכת בשדות הבאים:
-
--globalמציין שהשירות לקצה העורפי הוא גלובלי. משתמשים בשדה הזה בשירותים לקצה העורפי שמשמשים במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). - הפקודה
--enable-loggingמפעילה את הרישום ביומן של השירות לקצה העורפי הזה. --logging-sample-rateמאפשר לציין ערך מ-0.0עד1.0, כאשר0.0מציין שאף בקשה לא נרשמת ביומן ו-1.0מציין ש-100% מהבקשות נרשמות ביומן. השדה הזה רלוונטי רק עם הפרמטר--enable-logging. אם מפעילים את הרישום ביומן אבל מגדירים את תדירות הדגימה ל-0.0, זה כמו להשבית את הרישום ביומן. ערך ברירת המחדל הוא1.0.
--logging-optionalמאפשר לציין את שדות האפשרויות שרוצים לכלול ביומנים. השדות האלה נתמכים רק במאזני עומסים חיצוניים גלובליים של אפליקציות (ALB).INCLUDE_ALL_OPTIONALכדי לכלול את כל השדות האופציונליים.
EXCLUDE_ALL_OPTIONAL(ברירת המחדל) כדי להחריג את כל השדות האופציונליים.
CUSTOMכדי לכלול רשימה מותאמת אישית של שדות אופציונליים שציינתם ב-OPTIONAL_FIELDS.
--logging-optional-fields: רשימה מופרדת בפסיקים של שדות אופציונליים שרוצים לכלול ביומנים.לדוגמה, אפשר להגדיר את
tls.protocol,tls.cipherרק אםLOGGING_OPTIONAL_MODEמוגדר כ-CUSTOM. אם אתם משתמשים במדדים מותאמים אישית ורוצים לתעד רכיבים של דוח העומס של ORCA, אתם צריכים להגדיר אתLOGGING_OPTIONAL_MODEלערךCUSTOMולציין אילו רכיבים צריך לתעד בשדהOPTIONAL_FIELDS. לדוגמה,orcaLoadReport.cpu_utilization,orcaLoadReport.mem_utilization.
הפעלת רישום ביומן בשירות קיים לקצה העורפי
המסוף
במסוף Google Cloud , עוברים לדף איזון עומסים.
לוחצים על השם של מאזן העומסים.
לוחצים על עריכה.
לוחצים על Backend Configuration.
לוחצים על Edit לצד שירות הקצה העורפי.
בקטע רישום ביומן, מסמנים את התיבה הפעלת רישום ביומן.
בשדה Sample rate, מגדירים את הסבירות לדגימה. אפשר להגדיר מספר מ-
0.0עד1.0, כאשר0.0מציין שאף בקשה לא נרשמת ביומן ו-1.0מציין ש-100% מהבקשות נרשמות ביומן. ערך ברירת המחדל הוא1.0.אופציונלי: כדי לכלול את כל השדות האופציונליים ביומנים, בקטע Optional fields לוחצים על Include all optional fields.
כדי לסיים את עריכת השירות לקצה העורפי, לוחצים על Update.
כדי לסיים את עריכת מאזן העומסים, לוחצים על Update.
gcloud
מפעילים את הרישום ביומן בשירות קיים לקצה העורפי באמצעות הפקודה gcloud compute backend-services update.
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--enable-logging \
--logging-sample-rate=VALUE \
--logging-optional=LOGGING_OPTIONAL_MODE \
--logging-optional-fields=OPTIONAL_FIELDS
כאשר
-
--globalמציין שהשירות לקצה העורפי הוא גלובלי. משתמשים בשדה הזה בשירותים לקצה העורפי שמשמשים במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). - הפקודה
--enable-loggingמפעילה את הרישום ביומן של השירות לקצה העורפי הזה. - השדה
--logging-sample-rateמאפשר לציין ערך מ-0.0עד1.0, כאשר0.0מציין שאף בקשה לא מתועדת ביומן ו-1.0מציין ש-100% מהבקשות מתועדות ביומן. רלוונטי רק עם הפרמטר--enable-logging. הפעלת רישום ביומן והגדרת תדירות הדגימה ל-0.0שקולה להשבתת הרישום ביומן. ערך ברירת המחדל הוא1.0.
--logging-optionalמאפשר לציין את שדות האפשרויות שרוצים לכלול ביומנים. השדות האלה נתמכים רק במאזני עומסים חיצוניים גלובליים של אפליקציות (ALB).INCLUDE_ALL_OPTIONALכדי לכלול את כל השדות האופציונליים.EXCLUDE_ALL_OPTIONAL(ברירת המחדל) כדי להחריג את כל השדות האופציונליים.
CUSTOMכדי לכלול רשימה מותאמת אישית של שדות אופציונליים שציינתם ב-OPTIONAL_FIELDS.
--logging-optional-fieldsמאפשר לציין רשימה מופרדת בפסיקים של שדות אופציונליים שרוצים לכלול ביומנים.לדוגמה,
tls.protocol,tls.cipher. אפשר להגדיר את המדיניות הזו רק אם המדיניותLOGGING_OPTIONAL_MODEמוגדרת כ-CUSTOM. אם אתם משתמשים במדדים מותאמים אישית ורוצים לתעד רכיבים של דוח העומס של ORCA, אתם צריכים להגדיר אתLOGGING_OPTIONAL_MODEלערךCUSTOMולציין אילו רכיבים צריך לתעד בשדהOPTIONAL_FIELDS. לדוגמה,orcaLoadReport.cpu_utilization,orcaLoadReport.mem_utilization.
השבתה או שינוי של רישום ביומן בשירות קיים לקצה העורפי
המסוף
במסוף Google Cloud , עוברים לדף איזון עומסים.
לוחצים על השם של מאזן העומסים.
לוחצים על עריכה.
לוחצים על Backend Configuration.
לוחצים על Edit לצד שירות הקצה העורפי.
כדי להשבית את הרישום ביומן לחלוטין, בקטע Logging מבטלים את הסימון בתיבה Enable logging.
אם משאירים את הרישום ביומן מופעל, אפשר להגדיר חלק אחר של תדירות הדגימה. אפשר להגדיר מספר מ-
0.0עד1.0, כאשר0.0פירושו שאף בקשה לא מתועדת ביומן ו-1.0פירושו ש-100% מהבקשות מתועדות ביומן. ערך ברירת המחדל הוא1.0. לדוגמה, הערך0.2מציין ש-20% מהבקשות שנדגמו יוצרות יומנים.כדי לסיים את עריכת השירות לקצה העורפי, לוחצים על Update.
כדי לסיים את עריכת מאזן העומסים, לוחצים על Update.
gcloud: מצב גלובלי
משביתים את הרישום ביומן בשירות לקצה העורפי באמצעות הפקודה gcloud compute backend-services update.
השבתה מלאה של הרישום ביומן
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--no-enable-logging
כאשר
-
--globalמציין שהשירות לקצה העורפי הוא גלובלי. משתמשים בשדה הזה בשירותים לקצה העורפי שמשמשים במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). - הערך
--no-enable-loggingמשבית את הרישום ביומן של שירות הקצה העורפי הזה.
הפעלת שדות אופציונליים של רישום ביומן בשירות קיים לקצה העורפי
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--enable-logging \
--logging-sample-rate=VALUE \
--logging-optional=LOGGING_OPTIONAL_MODE \
--logging-optional-fields=OPTIONAL_FIELDS
כאשר
- השדה
--logging-sample-rateמאפשר לציין ערך מ-0.0עד1.0, כאשר0.0מציין שאף בקשה לא מתועדת ביומן ו-1.0מציין ש-100% מהבקשות מתועדות ביומן. רלוונטי רק עם הפרמטר--enable-logging. הפעלת רישום ביומן והגדרת תדירות הדגימה ל-0.0שקולה להשבתת הרישום ביומן. ערך ברירת המחדל הוא1.0.
--logging-optionalמאפשר לציין את שדות האפשרויות שרוצים לכלול ביומנים:INCLUDE_ALL_OPTIONALכדי לכלול את כל השדות האופציונליים.
EXCLUDE_ALL_OPTIONAL(ברירת המחדל) כדי להחריג את כל השדות האופציונליים.
CUSTOMכדי לכלול רשימה מותאמת אישית של שדות אופציונליים שציינתם ב-OPTIONAL_FIELDS.
--logging-optional-fields: רשימה מופרדת בפסיקים של שדות אופציונליים שרוצים לכלול ביומנים.לדוגמה, אפשר להגדיר את
tls.protocol,tls.cipherרק אםLOGGING_OPTIONAL_MODEמוגדר כ-CUSTOM. אם אתם משתמשים במדדים מותאמים אישית ורוצים לתעד רכיבים של דוח העומס של ORCA, אתם צריכים להגדיר אתLOGGING_OPTIONAL_MODEלערךCUSTOMולציין אילו רכיבים צריך לתעד בשדהOPTIONAL_FIELDS. לדוגמה,orcaLoadReport.cpu_utilization,orcaLoadReport.mem_utilization.
עדכון מצב הרישום האופציונלי מ-CUSTOM למצבים אחרים
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--enable-logging \
--logging-sample-rate=VALUE \
--logging-optional=LOGGING_OPTIONAL_MODE \
--logging-optional-fields=
כאשר
--logging-optionalמאפשר לציין את שדות האפשרויות שרוצים לכלול ביומנים:INCLUDE_ALL_OPTIONALכדי לכלול את כל השדות האופציונליים.
EXCLUDE_ALL_OPTIONAL(ברירת המחדל) כדי להחריג את כל השדות האופציונליים.
צריך להגדיר את
--logging-optional-fieldsבאופן מפורש כמו שמוצג כדי למחוק את כל השדות הקיימים שלCUSTOM. ה-API לא מאפשר לשלב מצב שאינוCUSTOMעם שדותCUSTOM.
שינוי תדירות הדגימה של הרישום ביומן
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--logging-sample-rate=VALUE
gcloud: מצב קלאסי
משביתים את הרישום ביומן בשירות לקצה העורפי באמצעות הפקודה gcloud compute backend-services update.
השבתה מלאה של הרישום ביומן
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--no-enable-logging
כאשר
-
--globalמציין שהשירות לקצה העורפי הוא גלובלי. השדה הזה משמש לשירותי קצה עורפי שמשתמשים במאזן עומסים קלאסי של אפליקציות (ALB). - הערך
--no-enable-loggingמשבית את הרישום ביומן של שירות הקצה העורפי הזה.
שינוי תדירות הדגימה של הרישום ביומן
gcloud compute backend-services update BACKEND_SERVICE \
--global \
--logging-sample-rate=VALUE
כאשר
-
--globalמציין שהשירות לקצה העורפי הוא גלובלי. השדה הזה משמש לשירותי קצה עורפי שמשתמשים במאזן עומסים קלאסי של אפליקציות (ALB). - השדה
--logging-sample-rateמאפשר לציין ערך מ-0.0עד1.0, כאשר0.0מציין שאף בקשה לא מתועדת ביומן ו-1.0מציין ש-100% מהבקשות מתועדות ביומן. רלוונטי רק עם הפרמטר--enable-logging. הפעלת רישום ביומן והגדרת תדירות הדגימה ל-0.0שקולה להשבתת הרישום ביומן.
צפייה ביומנים
יומני HTTP(S) נוספים לאינדקס קודם לפי כלל העברה, ואז לפי מפת URL.
כדי לראות את היומנים, נכנסים לדף Logs Explorer:
- כדי לראות את כל היומנים, בתפריט המסנן Resource בוחרים באפשרות Application Load Balancer > All forwarding_rule_name.
כדי להציג יומנים של כלל העברה אחד, בוחרים שם של כלל העברה אחד.
כדי להציג יומנים של מפת URL אחת, בוחרים כלל העברה ואז בוחרים מפת URL.
שדות ביומן מסוג בוליאני בדרך כלל מופיעים רק אם הערך שלהם הוא true. אם הערך של שדה בוליאני הוא false, השדה הזה מושמט מהיומן.
קידוד UTF-8 נאכף בשדות של היומן. תווים שהם לא UTF-8 מוחלפים בסימני שאלה.
במאזני עומסים קלאסיים של אפליקציות ובמאזני עומסים גלובליים חיצוניים של אפליקציות, אפשר לייצא מדדים מבוססי-יומנים באמצעות יומני משאבים (resource.type="http_load_balancer"). המדדים שנוצרים מבוססים על המשאב (l7_lb_rule) Application Load Balancer Rule (Logs-based Metrics), שזמין במרכזי הבקרה של Cloud Monitoring במקום במשאב https_lb_rule.
מה מתועד ביומן
רשומות ביומן של מאזן עומסים חיצוני של אפליקציות מכילות מידע שימושי למעקב אחרי תעבורת הנתונים ב-HTTP(S) ולניפוי באגים. רשומות ביומן מכילות שדות חובה, שהם שדות ברירת המחדל של כל רשומה ביומן.
רשומות ביומן מכילות שדות אופציונליים שמוסיפים מידע על תעבורת הנתונים ב-HTTP(S). אפשר להשמיט שדות אופציונליים כדי לחסוך בעלויות האחסון.
חלק מהשדות ביומן הם בפורמט של כמה שדות, עם יותר מנתון אחד בשדה נתון. לדוגמה, השדהtls הוא בפורמט TlsInfo, שמכיל את השדה earlyDataRequest.
השדות האלה מתוארים בטבלה הבאה של פורמט הרשומה.
| שדה | פורמט השדה | סוג השדה: חובה או אופציונלי | תיאור |
|---|---|---|---|
| severity insertID logName |
LogEntry | חובה | השדות הכלליים שמתוארים ברשומת יומן. |
| timestamp | מחרוזת (בפורמט Timestamp) | אופציונלי | הזמן שבו ה-GFE בשכבה הראשונה מקבל את הבקשה. |
| httpRequest | HttpRequest | חובה | פרוטוקול נפוץ לרישום בקשות HTTP ביומן.
השדה |
| משאב | MonitoredResource | חובה | השדה MonitoredResource הוא סוג המשאב שמשויך לרשומה ביומן. האובייקט MonitoredResourceDescriptor מתאר את הסכימה של אובייקט |
| jsonPayload | אובייקט (פורמט Struct) | חובה | המטען הייעודי (payload) של הרשומה ביומן, שמיוצג כאובייקט JSON. אובייקט ה-JSON מכיל את השדות הבאים:
|
| מחרוזת | חובה | השדה statusDetails מכיל מחרוזת שמסבירה למה מאזן העומסים החזיר את קוד הסטטוס של HTTP. מידע נוסף על המחרוזות האלה ביומן מופיע במאמרים הודעות statusDetails HTTP על הצלחה והודעות statusDetails HTTP על כישלון. |
|
| מחרוזת | חובה | השדה backendTargetProjectNumber מכיל את מספר הפרויקט שבו נוצר יעד הקצה העורפי – שירות לקצה העורפי או קטגוריית קצה עורפי. השדה הזה הוא בפורמט:
"projects/PROJECT_NUMBER". המידע הזה זמין רק למאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) שמשתמשים בתגובות מותאמות אישית לשגיאות. |
|
| מחרוזת | אופציונלי | השדה cachePolicySource מכיל את המקור של מדיניות השמירה במטמון, שקובעת את אופן השמירה במטמון של בקשה ספציפית: |
|
| מספר שלם | חובה | השדה overrideResponseCode מכיל את קוד התגובה לשינוי שהוחל על התגובה שנשלחה ללקוח. המידע הזה זמין רק למאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) שמשתמשים בתגובות מותאמות אישית לשגיאות. |
|
| מחרוזת | חובה | השדה errorService מכיל את שירות הקצה העורפי שסיפק את תגובת השגיאה בהתאמה אישית. המידע הזה זמין רק למאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) שמשתמשים בתגובות מותאמות אישית לשגיאות. |
|
| מחרוזת | חובה | השדה errorBackendStatusDetails מכיל את ה-statusDetails של התשובה הסופית שנשלחה ללקוח.
המידע הזה זמין רק למאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) שמשתמשים בתגובות מותאמות אישית לשגיאות. |
|
| AuthzPolicyInfo | חובה | השדה authzPolicyInfo מאחסן מידע על התוצאה של מדיניות ההרשאה. המידע הזה זמין רק למאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) שהופעלו בהם
כללי מדיניות הרשאה. מידע נוסף זמין במאמר
יומני בקשות של מדיניות הרשאה. |
|
| מחרוזת | אופציונלי | השדה loadBalancingScheme מאוכלס רק אם משתמשים בתכונת ההעברה של מאזן עומסים של אפליקציות (ALB) הקלאסי. השדה הזה מכיל מחרוזת שמתארת באיזו סכימה של איזון עומסים נעשה שימוש כדי לנתב את הבקשה. הערכים האפשריים הם EXTERNAL או EXTERNAL_MANAGED. |
|
| TlsInfo | חובה | השדה משתמשים בפרמטר
אי אפשר להגדיר את |
|
| OrcaLoadReport | אופציונלי | השדה משתמשים בפרמטר
אפשר גם להגדיר את |
|
| serviceExtensionInfo | אופציונלי | בשדה אם הפעלתם את שער Google Tag במאזן העומסים, ה- משתמשים בפרמטר
אפשר גם להגדיר את |
פורמט השדה TlsInfo
| שדה | פורמט השדה | סוג השדה: חובה או אופציונלי | תיאור |
|---|---|---|---|
| פרוטוקול | מחרוזת | אופציונלי | פרוטוקול TLS שבו הלקוחות משתמשים כדי ליצור חיבור עם מאזן העומסים. הערכים האפשריים הם TLSv1, TLSv1.1, TLSv1.2, TLSv1.3 או QUIC.
הערך הזה מוגדר כ-NULL אם הלקוח לא משתמש בהצפנת TLS/SSL.
|
| צופן | מחרוזת | אופציונלי | הצפנת TLS שבה הלקוחות משתמשים כדי ליצור חיבור עם מאזן העומסים. הערך הזה מוגדר כ-NULL אם הלקוח לא משתמש ב-HTTP(S) או בהצפנת TLS/SSL.
|
| earlyDataRequest | בוליאני | חובה | הבקשה כוללת נתונים מוקדמים בלחיצת היד בפרוטוקול TLS. |
פורמט השדה serviceExtensionInfo
| שדה | פורמט השדה | סוג השדה: חובה או אופציונלי | תיאור |
|---|---|---|---|
| backendTargetName | מחרוזת | אופציונלי | השם של יעד הקצה העורפי של התוסף. |
| backendTargetType | מחרוזת | אופציונלי | סוג היעד לקצה העורפי. |
| תוסף | מחרוזת | אופציונלי | השם של התוסף בשרשרת התוספים. בשער Google Tag, הערך הזה יהיה 0-google-tag-gateway.
|
| perProcessingRequestInfo | מערך | אופציונלי | רשימה של נתונים סטטיסטיים של ProcessingRequest עבור
ext_proc extensions או נתונים סטטיסטיים של CheckRequest עבור
ext_authz extensions שמתרחשים בסטרימינג של gRPC.
|
| perProcessingRequestInfo.eventType | טיפוסים בני מנייה (enum) | אופציונלי | סוג האירוע של ProcessingRequest. השדה הזה יכול להיות אחד מהערכים הבאים: REQUEST_HEADERS, REQUEST_BODY, RESPONSE_HEADERS או RESPONSE_BODY.
|
| perProcessingRequestInfo.grpcStatus | טיפוסים בני מנייה (enum) | אופציונלי | סטטוס האירוע של עיבוד הבקשה, שמוצג כקוד סטטוס gRPC. |
| perProcessingRequestInfo.latency | משך זמן | אופציונלי | משך הזמן מרגע שליחת הבייט הראשון של ההודעה ProcessingRequest לתוסף ועד לקבלת הבייט האחרון של ההודעה ProcessingResponse.
|
| perProcessingRequestInfo.processingEffect | טיפוסים בני מנייה (enum) | אופציונלי | תוצאת העיבוד של כל אירוע בבקשת עיבוד. השדה הזה יכול לכלול אחד מהערכים הבאים:
|
| משאב | מחרוזת | אופציונלי | השם של משאב התוסף. בשער Google Tag, הערך יהיה google-tag-gateway-tag-injector-extension. |
תוויות של משאבים
בטבלה הבאה מפורטות תוויות המשאבים של resource.type="http_load_balancer".
| שדה | סוג | תיאור |
|---|---|---|
backend_service_name |
מחרוזת | השם של השירות לקצה העורפי. |
forwarding_rule_name |
מחרוזת | השם של אובייקט כלל ההעברה. |
project_id |
מחרוזת | המזהה של הפרויקט ב- Google Cloud שמשויך למשאב הזה. |
target_proxy_name |
מחרוזת | השם של אובייקט שרת ה-proxy לחלוקת העומס שאליו מפנה כלל ההעברה. |
url_map_name |
מחרוזת | השם של אובייקט מפת כתובות ה-URL שמוגדר לבחירת שירות לקצה העורפי. |
zone |
מחרוזת | האזור שבו פועל מאזן העומסים. האזור הוא global. |
הודעות הצלחה של statusDetails HTTP
| statusDetails (successful) | משמעות | קודי תגובה נלווים נפוצים |
|---|---|---|
byte_range_caching
|
בקשת ה-HTTP טופלה באמצעות שמירה במטמון של טווח בייטים ב-Cloud CDN. | כל קוד תגובה שניתן לשמור במטמון אפשרי. |
response_from_cache
|
בקשת ה-HTTP הוגשה ממטמון של Cloud CDN. | כל קוד תגובה שניתן לשמור במטמון אפשרי. |
response_from_cache_validated
|
קוד ההחזרה הוגדר מרשומה שנשמרה במטמון של Cloud CDN ואומתה על ידי קצה עורפי. | כל קוד תגובה שניתן לשמור במטמון אפשרי. |
response_sent_by_backend
|
בקשת ה-HTTP הועברה בהצלחה ל-backend באמצעות שרת proxy, והתגובה הוחזרה על ידי ה-backend. | קוד תגובת HTTP מוגדר על ידי התוכנה שפועלת בקצה העורפי. |
הודעות שגיאה של statusDetails HTTP
| statusDetails (failure) | משמעות | קודי סטטוס נלווים נפוצים |
|---|---|---|
aborted_request_due_to_backend_early_response
|
בקשה עם גוף בוטלה כי הקצה העורפי שלח תגובה מוקדמת עם קוד סטטוס. התשובה הועברה ללקוח. הבקשה הסתיימה. | 4XX או 5XX
|
backend_connection_closed_after_partial_response_sent
|
החיבור לקצה העורפי נסגר באופן בלתי צפוי אחרי שנשלחה תגובה חלקית ללקוח. | קוד הסטטוס של HTTP מוגדר על ידי התוכנה שפועלת בקצה העורפי.
קוד סטטוס של HTTP קוד הסטטוס של HTTP הוא |
backend_connection_closed_before_data_sent_to_client
|
החיבור של הקצה העורפי למאזן העומסים נסגר באופן לא צפוי לפני שהתגובה הועברה לשרת proxy של הלקוח. | 502, 503 קוד הסטטוס של HTTP הוא |
backend_early_response_with_non_error_status
|
ה-backend שלח קוד סטטוס שאינו שגיאה (1XX או 2XX) לבקשה לפני שקיבל את גוף הבקשה המלא מהלקוח.
|
502, 503
|
backend_interim_response_not_supported
|
ה-backend שלח קוד סטטוס זמני של
|
|
backend_response_corrupted
|
גוף תגובת ה-HTTP שנשלח על ידי הקצה העורפי מכיל קידוד העברה מקוטע לא תקין או שהוא פגום מסיבה אחרת. | כל קוד סטטוס אפשרי, בהתאם לאופי הפגיעה.
502, 503 לעיתים קרובות.
|
backend_response_headers_too_long
|
כותרות תגובת HTTP שנשלחו על ידי הבק-אנד חרגו מהמגבלה המותרת. מידע נוסף זמין בקטע גודל הכותרת במאזני עומסים חיצוניים של אפליקציות. | 502, 503
|
backend_timeout
|
הזמן הקצוב של הקצה העורפי הסתיים במהלך יצירת התשובה. לחיבור WebSocket:
|
קוד הסטטוס של HTTP הוא |
banned_by_security_policy
|
הבקשה נחסמה על ידי כלל חסימה מבוסס-קצב של Cloud Armor. | 429
|
body_not_allowed
|
הלקוח שלח בקשת HTTP עם גוף, אבל שיטת ה-HTTP שבה השתמש לא מאפשרת גוף. | 400
|
byte_range_caching_aborted
|
מאזן העומסים קיבל בעבר תגובה שמציינת שאפשר לשמור את המשאב במטמון ושהוא תומך בטווחי בייטים. Cloud CDN קיבל תגובה לא עקבית (לדוגמה, תגובה עם קוד סטטוס שונה מהקוד הצפוי 206 Partial Content). זה קרה כשניסה למלא את המטמון באמצעות בקשה לטווח בייטים.
כתוצאה מכך, מאזן העומסים ביטל את התגובה ללקוח.
|
2XX
|
byte_range_caching_forwarded_backend_response
|
מאזן העומסים קיבל בעבר תגובה שמציינת שאפשר לשמור את המשאב במטמון ושהוא תומך בטווחי בייטים. Cloud CDN קיבל תגובה לא עקבית (לדוגמה, תגובה עם קוד סטטוס שונה מהקוד הצפוי 206 Partial Content). זה קרה כשניסה למלא את המטמון באמצעות בקשה לטווח בייטים.
לאחר מכן, מאזן העומסים העביר את התגובה הלא עקבית ללקוח.
|
מוחזר מה-backend – כל קוד סטטוס אפשרי. |
byte_range_caching_retrieval_abandoned
|
הלקוח ביטל בקשה לטווח בייטים או בקשת אימות שהופעלה על ידי Cloud CDN. | מוחזר מה-backend – כל קוד סטטוס אפשרי. |
byte_range_caching_retrieval_from_backend_failed_after_partial_response
|
אירעה שגיאה בבקשה לטווח בייטים או בבקשת אימות שהופעלה על ידי Cloud CDN. כדי לראות את סטטוס הקצה העורפי המפורט, צריך לעיין ברשומת היומן התואמת ב-Cloud Logging לבקשה שהופעלה על ידי Cloud CDN. | 2XX
|
cache_lookup_failed_after_partial_response
|
מפזר העומסים לא הצליח להציג תשובה מלאה מהמטמון של Cloud CDN בגלל שגיאה פנימית. | 2XX
|
cache_lookup_timeout_after_partial_response
|
הזמן הקצוב לתפוגה של זרם החיפוש במטמון של Cloud CDN הסתיים כי הלקוח לא אחזר את התוכן בזמן. | 2XX
|
client_disconnected_after_partial_response
|
החיבור ללקוח נותק אחרי שמאזן העומסים שלח תגובה חלקית. | מוחזר מה-backend – כל קוד סטטוס אפשרי. קוד הסטטוס של HTTP הוא |
client_disconnected_before_any_response
|
החיבור ללקוח נותק לפני שהמאזן העומסים שלח תגובה. |
קוד הסטטוס של HTTP הוא |
client_timed_out
|
החיבור של הלקוח ל-Google Front End (GFE) נותק בגלל חוסר פעילות בזמן שה-GFE שימש כשרת proxy לבקשה או לתגובה. | 0 או 408
|
client_cert_invalid_rsa_key_size
|
לאישור עלה או לאישור ביניים של לקוח היה גודל לא חוקי של מפתח RSA. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_unsupported_elliptic_curve_key
|
אישור לקוח או אישור ביניים משתמש בעקומה אליפטית שלא נתמכת. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_unsupported_key_algorithm
|
אישור לקוח או אישור ביניים משתמש באלגוריתם שאינו RSA או ECDSA. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_pki_too_large
|
לתשתית המפתח הציבורי (PKI) שמשמשת לאימות יש יותר מ-10 אישורי ביניים שחולקים את אותם פרטי מפתח ציבורי (Subject Public Key Info) ונושא (Subject). מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_chain_max_name_constraints_exceeded
|
אישור ביניים שסופק לאימות הכיל יותר מעשר מגבלות שם. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_chain_invalid_eku |
לאישור הלקוח או למנפיק שלו אין שימוש מורחב במפתח (EKU) שכולל את clientAuth. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים.
|
0
|
client_cert_validation_timed_out
|
הזמן הקצוב לאימות שרשרת האישורים נגמר. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_validation_search_limit_exceeded
|
הגעת למגבלת העומק או האיטרציה בזמן הניסיון לאמת את שרשרת האישורים. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_validation_not_performed
|
הגדרת mTLS בלי להגדיר TrustConfig.
מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים.
|
0
|
client_cert_not_provided
|
הלקוח לא סיפק את האישור המבוקש במהלך לחיצת היד. מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים. | 0
|
client_cert_validation_failed
|
אישור הלקוח נכשל באימות באמצעות TrustConfig
כשמשתמשים באלגוריתמים של גיבוב כמו MD4, MD5 ו-SHA-1.
מידע נוסף זמין במאמר שגיאות שנרשמו ביומן לגבי חיבורים סגורים.
|
0
|
direct_response
|
מאזן העומסים ביטל את הבקשה הזו והחזיר תגובה קבועה. | יכול להיות שיוצג קוד סטטוס של HTTP, בהתאם לאופי הבעיה. לדוגמה, קוד הסטטוס 410 של HTTP מציין שה-backend לא זמין בגלל איחור בתשלום.
|
denied_by_authz_policy |
מאזן העומסים דחה את הבקשה הזו בגלל מדיניות הרשאה. | 403 |
denied_by_security_policy
|
מאזן העומסים דחה את הבקשה בגלל מדיניות האבטחה של Google Cloud Armor. | מוגדרת במדיניות האבטחה. |
error_uncompressing_gzipped_body
|
אירעה שגיאה בביטול הדחיסה של תגובת HTTP שנדחסה באמצעות gzip. | 502, 503
|
failed_parsing_client_headers
|
בקשות שמשתמשות בשיטות (לדוגמה, קוד השגיאה הזה רלוונטי רק למאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) ולמאזני עומסים קלאסיים של אפליקציות (ALB). |
400 |
failed_to_connect_to_backend
|
מנגנון איזון העומסים לא הצליח להתחבר לקצה העורפי. זה כולל זמנים קצובים לתפוגה במהלך שלב החיבור. | 502, 503 |
failed_to_pick_backend
|
מאזן העומסים לא הצליח לבחור בקצה עורפי תקין כדי לטפל בבקשה. | 502, 503
|
failed_to_negotiate_alpn
|
מאזן העומסים וה-backend לא הצליחו לנהל משא ומתן על פרוטוקול שכבת האפליקציה (כמו HTTP/2) כדי לתקשר זה עם זה באמצעות TLS. | 502, 503
|
headers_too_long
|
כותרות הבקשה היו גדולות מהמקסימום המותר. | 413
|
http_version_not_supported
|
גרסת ה-HTTP לא נתמכת. יש תמיכה רק ב-HTTP 0.9, 1.0, 1.1 ו-2.0. | 400
|
image_optimization_bad_request
|
הפורמט של הפרמטר imop של השאילתה בבקשה לאופטימיזציה של תמונות ב-Cloud CDN לא תקין, או שהאימות של פעולה או של ערך פרמטר נכשל.
|
400
|
image_optimization_method_not_allowed
|
הלקוח שלח בקשה לאופטימיזציה של תמונות ב-Cloud CDN באמצעות שיטת HTTP שלא נתמכת. אפשר להשתמש רק בשיטות GET, HEAD ו-OPTIONS.
|
405
|
image_optimization_not_acceptable
|
הכותרת Accept בבקשה לאופטימיזציה של תמונות ב-Cloud CDN לא תואמת לאף פורמט תמונה נתמך או לפורמט שצוין בפרמטר השאילתה imop.
|
406
|
internal_error
|
שגיאה פנימית במאזן העומסים. בדרך כלל מייצג שגיאה זמנית בתשתית של מאזן העומסים. מנסים שוב את השאילתה. | 4XX או 5XX
|
invalid_chunk_framing |
בקשות ותגובות שנשלחות עם הכותרת Transfer-Encoding:
Chunked לא תואמות ל-RFC 9112. בהתאם ל-RFC, גם השדה chunked_body וגם השדה last-chunk חייבים להסתיים ב-CRLF. |
400 |
invalid_external_origin_endpoint
|
ההגדרה של הקצה העורפי החיצוני לא תקינה. בודקים את ההגדרות של קבוצת נקודות הקצה ל-NEG באינטרנט ומוודאים שהן כוללות כתובת IP או FQDN תקינים ויציאה תקינה. | 4XX
|
invalid_request_headers
|
הכותרות של בקשת ה-HTTP שהתקבלו מלקוח מכילות לפחות תו אחד שאסור לפי מפרט ה-HTTP הרלוונטי. לדוגמה, שמות של שדות כותרת שכוללים מירכאות כפולות ( למידע נוסף: |
400
|
invalid_http2_client_header_format
|
כותרות ה-HTTP/2 מלקוח לא תקינות. מידע נוסף זמין במאמר invalid_request_headers.
|
400
|
invalid_http2_client_request_path
|
נתיב הבקשה של HTTP/2 מלקוח מכיל לפחות תו אחד שאסור לפי מפרט ה-URI. מידע נוסף זמין במאמר "3.3. Path" של RFC 3986. |
400
|
invalid_http2_request_content_length
|
הכותרת למפרטים מדויקים, ראו סעיף 8.6 של RFC 9110. |
400
|
multiple_iap_policies
|
אי אפשר לשלב כמה כללי מדיניות של שרת proxy לאימות זהויות (IAP). אם יש לכם מדיניות IAP שמצורפת לשירות לקצה העורפי ומדיניות אחרת שמצורפת לאובייקט ללא שרת (serverless), צריך להסיר את אחת מהן ולנסות שוב. אובייקטים בלי שרת (serverless) כוללים את App Engine, Cloud Run ופונקציות Cloud Run. | 500
|
malformed_chunked_body
|
גוף הבקשה קודד באופן שגוי. | 411
|
request_loop_detected
|
מאזן העומסים זיהה לולאת בקשות. יכול להיות שהלולאה הזו נגרמה בגלל הגדרה שגויה, שבה הקצה העורפי העביר את הבקשה בחזרה למאזן העומסים. | 502, 503
|
required_body_but_no_content_length
|
בקשת ה-HTTP דורשת גוף, אבל כותרות הבקשה לא כוללות כותרת של אורך תוכן או כותרת של קידוד העברה מקוטע. | 400, 403, 411
|
retriable_error
|
במאזן העומסים אירעה שגיאת תשתית, ואפשר לנסות שוב לשלוח את הבקשה. הבעיה הזו יכולה להתרחש מדי פעם אחרי שמבצעים שינויים בהגדרות שמוסיפים משאב חדש או מפנים אליו. מצב כזה יכול לקרות גם כשה-GFE בשכבה הראשונה לא מצליח לתקשר עם ה-GFE בשכבה השנייה בגלל שגיאה פנימית, כמו השקה בתהליך, עומס יתר במאזן העומסים או בעיה זמנית בהגדרות. השגיאות האלה הן זמניות, והן צפויות להיות במסגרת הסכם רמת השירות (SLA). עם זאת, אם שיעור השגיאות עולה על 0.01% לאורך זמן, פנו אל התמיכה שלGoogle Cloud כדי לקבל עזרה. |
404, 502, 503
|
secure_url_rejected
|
התקבלה בקשה עם כתובת URL של https:// דרך חיבור HTTP/1.1 בטקסט פשוט.
|
400
|
server_cert_chain_exceeded_limit
|
שרשרת האישורים של השרת ארוכה מדי (יותר מ-10 אישורי ביניים כלולים באישור השרת). | 502, 503 |
|
לאישור השרת יש שדה תוסף Extended Key Usage (EKU), אבל השדה הזה לא כולל את serverAuth. |
|
|
|
אישור ביניים שסופק לאימות כלל יותר מ-10 מגבלות שם. | 502, 503 |
server_cert_exceeded_size_limit
|
המטען הייעודי (payload) של אישור השרת (כולל אישורי ביניים) גדול מדי (יותר מ-16KB). | 503 |
server_cert_invalid_rsa_key_size
|
לשרת או לאישור ביניים יש גודל מפתח RSA לא חוקי. לא מתבצע אימות. מפתחות RSA יכולים להיות בגודל של 2,048 עד 4,096 ביט. |
503 |
server_cert_not_provided
|
השרת לא סיפק את האישור המבוקש במהלך לחיצת היד. | 503 |
server_cert_pki_too_large
|
ב-PKI שמשמש לאימות יש יותר מ-10 אישורים ביניים שחולקים את אותם פרטי מפתח ציבורי (Subject Public Key Info) ונושא. לא מתבצע אימות. |
503 |
server_cert_trust_config_not_found
|
לא נמצאה התאמה ל-TrustConfig.
|
503 |
server_cert_unsupported_elliptic_curve_key
|
שרת או אישור ביניים משתמשים בעקומה אליפטית שלא נתמכת. לא מתבצע אימות. העקומות התקינות הן P-256 ו-P-384. |
503 |
server_cert_unsupported_key_algorithm
|
בשרת או באישור ביניים נעשה שימוש באלגוריתם שאינו RSA או ECDSA. לא מתבצע אימות. |
503 |
server_cert_validation_internal_error
|
שגיאה פנימית באימות שרשרת האישורים. | 503 |
server_cert_validation_not_performed
|
הגדרתם mTLS בלי להגדיר משאב |
503 |
server_cert_validation_search_limit_exceeded
|
הגעת למגבלת העומק או האיטרציה בזמן הניסיון לאמת את שרשרת האישורים. העומק המקסימלי של שרשרת אישורים הוא עשרה, כולל אישורי הבסיס והשרת. מספר החזרות המקסימלי הוא 100 (אישורים שנבדקו כדי לאמת את שרשרת האישורים של השרת). |
503 |
server_cert_validation_timed_out
|
הזמן הקצוב פג במהלך הניסיון לאמת את שרשרת האישורים. | 503 |
server_cert_validation_unavailable
|
השירות לא יכול לבצע אימות של שרשרת האישורים. | 503 |
ssl_certificate_san_verification_failed
|
מאזן העומסים לא מוצא שם חלופי של בעלים (SAN) באישור ה-SSL שהוצג על ידי הקצה העורפי שתואם לשם המארח שהוגדר. | 502, 503
|
ssl_certificate_chain_verification_failed
|
אישור ה-SSL שהוצג על ידי הקצה העורפי נכשל באימות אישור ה-SSL. | 502, 503
|
throttled_by_security_policy
|
הבקשה נחסמה על ידי כלל ויסות נתונים של Cloud Armor. | 429
|
unsupported_method
|
הלקוח סיפק שיטת בקשת HTTP שלא נתמכת. | 400
|
unsupported_100_continue
|
בקשת הלקוח כללה את הכותרת "Expect: 100-continue" בפרוטוקול שלא תומך בה. | 400
|
upgrade_header_rejected
|
בקשת ה-HTTP של הלקוח הכילה את הכותרת Upgrade ונדחתה. | 400
|
websocket_closed
|
החיבור ל-WebSocket נסגר. | 101
|
websocket_handshake_failed
|
לחיצת היד של WebSocket נכשלה. | כל קוד סטטוס אפשרי, בהתאם לאופי של הכשל בלחיצת היד. |
request_body_too_large
|
גוף בקשת ה-HTTP חרג מהגודל המקסימלי שנתמך על ידי הקצה העורפי. לא רלוונטי לקצוות עורפיים של מכונות וירטואליות. | 413 |
handled_by_identity_aware_proxy
|
התגובה הזו נוצרה על ידי IAP במהלך אימות הזהות של הלקוח לפני שניתנה גישה. |
|
serverless_neg_routing_failed
|
אי אפשר לשלוח את הבקשה ל-NEG ללא שרת. השגיאה הזו יכולה לקרות כשאי אפשר להגיע לאזור שצוין ב-NEG, או כשאי אפשר למצוא את שם המשאב (לדוגמה, השם של פונקציית Cloud Run). | 404, 502, 503
|
fault_filter_abort
|
השגיאה הזו יכולה להתרחש אם הלקוח הגדיר מסנן תקלות, והמסנן הופעל בבקשה הנתונה. | הערך חייב להיות בין 200 ל-599.
|
early_data_rejected
|
הבקשה שנשלחה ב-TLS early data לא הייתה תקינה. זה יכול לקרות במקרים הבאים, בין היתר:
|
425 |
service_extension_error |
אירעה שגיאה בקריאה לתוסף שירות שמשמש את מאזן העומסים. זה יכול לקרות אם הפלאגין של Wasm מגיב לאט וחורג מהמגבלה של אלפית השנייה לשליחת התגובה. |
425 |
צפייה ביומנים של אימות אישורי לקוח ב-mTLS
כדי לראות את השגיאות שנרשמו ביומן לגבי חיבורים שנסגרו במהלך אימות אישור הלקוח ב-Mutual TLS, מבצעים את השלבים הבאים.
שאילתה במסוף
נכנסים לדף Logs Explorer במסוף Google Cloud .
לוחצים על המתג Show query.
מדביקים את הטקסט הבא בשדה השאילתה. מחליפים את
FORWARDING_RULE_NAMEבשם של כלל ההעברה.jsonPayload.statusDetails=~"client_cert" jsonPayload.@type="type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" resource.labels.forwarding_rule_name=FORWARDING_RULE_NAME
לוחצים על Run query.
יומני בקשות של מדיניות הרשאה
האובייקט authz_info במטען הייעודי (payload) של JSON ברשומת היומן של מאזן העומסים מכיל מידע על כללי מדיניות ההרשאות. אתם יכולים להגדיר מדדים מבוססי-יומנים לתנועה שמותרת או נדחית על ידי כללי המדיניות האלה. פרטים נוספים על יומני מדיניות ההרשאות
| שדה | סוג | תיאור |
|---|---|---|
authz_info.policies[] |
אובייקט | רשימת כללי המדיניות שתואמים לבקשה. |
authz_info.policies[].name |
מחרוזת | שם מדיניות ההרשאה שתואמת לבקשה.
השם ריק מהסיבות הבאות:
|
authz_info.policies[].result |
טיפוסים בני מנייה (enum) | התוצאה יכולה להיות ALLOWED או DENIED. |
authz_info.policies[].details |
מחרוזת | הפרטים כוללים:
|
authz_info.overall_result |
טיפוסים בני מנייה (enum) | התוצאה יכולה להיות ALLOWED או DENIED. |
רישום ביומן ב-Cloud Armor
הטבלה של הודעות השגיאה של statusDetail HTTP מכילה כמה הודעות שרלוונטיות ל-Cloud Armor. למידע נוסף על מה שמתועד ביומנים של Cloud Armor, קראו את המאמר שימוש ברישום בקשות ביומן.
רישום ביומן של פריסות VPC משותף
היומנים והמדדים של מאזן העומסים של האפליקציות מיוצאים בדרך כלל לפרויקט שבו נמצא כלל ההעברה. לכן, לאדמינים של השירות – בעלים או משתמשים של פרויקטים שבהם נוצר שירות הקצה העורפי – לא תהיה גישה ליומנים ולמדדים של מאזן העומסים כברירת מחדל. אתם יכולים להשתמש בתפקידי IAM כדי לתת את ההרשאות האלה לאדמינים של השירות. במאמר מתן גישה ל-Monitoring מוסבר אילו תפקידים זמינים ב-IAM ואיך נותנים גישה.
רישום ביומן של שער Google Tag למפרסמים
אם אתם משתמשים בשער Google Tag עם מאזן עומסים חיצוני גלובלי של אפליקציות (ALB), אתם יכולים להשתמש ב-Cloud Logging וב-Cloud Monitoring כדי לאמת את ההגדרה ולאבחן בעיות. למרות שההגדרות מנוהלות באמצעות Google Ads, עיבוד הבקשות וההזרקות של Google Tag שמבוצעות על ידי השער מתועדים ברישום ביומן ובמעקב של מאזן העומסים החיצוני הגלובלי של האפליקציות. מידע נוסף זמין במאמר רישום ביומן ומעקב אחרי מאזן עומסים גלובלי חיצוני של אפליקציות (ALB).
- במסוף Google Cloud , בוחרים את הפרויקט באמצעות הכלי לבחירת פרויקטים.
כדי לראות את היומנים, נכנסים לדף Logs Explorer:
כדי לעקוב אחרי הזרקות של תגים וניתוב של נתוני מדידה, מדביקים את הטקסט הבא בשדה Query.
עוקבים אחרי שינויים בתוכן. כששער Google Tag מוסיף תגי Google Tag לתגובות ה-HTML של האתר, ההוספות של Google Tag מתועדות ביומנים של מאזן העומסים. כדי לוודא שההזרקות של התגים האלה הצליחו, אפשר לבדוק את המטען הייעודי (payload) של ה-JSON ביומן. בקשות שתגובות ה-HTML שלהן שונו על ידי השער מכילות אובייקט
serviceExtensionInfoבמטען הייעודי (payload) של ה-JSON, שבו השדותextensionו-resourceמסתיימים ב--google-tag-gateway.jsonPayload.serviceExtensionInfo.extension=~ "google-tag-gateway$"
מעקב אחרי הניתוב של נתוני המדידה. אחרי שפורסים את Google Tag באתר, אפשר לזהות את הבקשות של נתיב המדידה ביומנים של מאזן העומסים של האפליקציות החיצוניות. כדי לעשות את זה, מסננים את הרשומות שבהן הערך של
backend_service_nameמתחיל ב-google-tag-gateway-.resource.backend_service_name=~ "^google-tag-gateway-"
איך פותרים בעיות בהחדרת הקוד של שער Google Tag
אינטראקציה עם היומנים
אתם יכולים להשתמש ביומנים של מאזן העומסים של אפליקציות (ALB) החיצוני באמצעות Cloud Logging API. באמצעות Logging API אפשר לסנן באופן אינטראקטיבי יומנים שמוגדרים בהם שדות ספציפיים. הוא מייצא יומנים תואמים אל Cloud Logging, Cloud Storage, BigQuery או Pub/Sub. למידע נוסף על Logging API, קראו את הסקירה הכללית על Logging API.
מעקב
מאזן העומסים מייצא נתוני מעקב אל Monitoring.
אתם יכולים להשתמש במדדי מעקב כדי:
- הערכת ההגדרות, השימוש והביצועים של מאזן עומסים
- פתרון בעיות
- שיפור ניצול המשאבים וחוויית המשתמש
תדירות הדיווח על המדדים ושמירת הנתונים
המדדים של מאזני העומסים החיצוניים של אפליקציות (ALB) מיוצאים ל-Cloud Monitoring באצוות של דקה אחת. נתוני המעקב נשמרים למשך שישה (6) שבועות.
בלוח הבקרה מוצג ניתוח נתונים במרווחי זמן שמוגדרים כברירת מחדל: שעה, 6 שעות, יום, שבוע ו-6 שבועות. אפשר לבקש ניתוח באופן ידני בכל מרווח זמן, מ-6 שבועות ועד דקה אחת.
מדדי מעקב
אפשר לעקוב אחרי המדדים הבאים של מאזני עומסים חיצוניים של אפליקציות (ALB).
במאמר מדדים לאפליקציות ב-App Hub מפורטים המדדים שתומכים באפליקציות ב-App Hub ובמעקב אחרי אפליקציות.המדדים הבאים של מאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) מדווחים ל-Cloud Monitoring.
| מדד | שם | תיאור |
|---|---|---|
| שיעור העמלה שהוגדר בקצה העורפי | network.googleapis.com/loadbalancer/backend/configured_rate |
הקצב המקסימלי של בקשות לשנייה שמוגדר לכל קבוצת בקאנד. זהו התוצאה של שינוי קנה המידה של קיבולת היעד לפי (מגדיל הקיבולת), אם צוין. |
| ניצול מוגדר של הקצה העורפי | network.googleapis.com/loadbalancer/backend/configured_utilization |
הקיבולת המקסימלית של ניצול ה-CPU כשבר, שמוגדרת לכל קבוצת בקאנד. זהו התוצאה של שינוי קנה המידה של קיבולת היעד באמצעות משנה קנה המידה של הקיבולת, אם צוין. |
| שיעור השגיאות בקצה העורפי | network.googleapis.com/loadbalancer/backend/error_rate |
השגיאות שכל קבוצת קצה עורפי מחזירה בשנייה. |
| מלאות הקצה העורפי | network.googleapis.com/loadbalancer/backend/fullness |
העומס הנוכחי של כל קבוצת קצה עורפי באחוזים, על סמך מצב האיזון של מאזן העומסים. |
| זמני אחזור בקצה העורפי† | loadbalancing.googleapis.com/https/backend_latencies |
התפלגות זמן האחזור של הקצה העורפי. זמן האחזור של הקצה העורפי הוא הזמן באלפיות השנייה בין הבייט האחרון של הבקשה שנשלחה לקצה העורפי לבין הבייט האחרון של התגובה שהתקבלה על ידי שרת ה-proxy. הוא כולל את הזמן שלוקח לקצה העורפי לעבד את הבקשה ואת הזמן שלוקח לשלוח את התגובה בחזרה לשרת ה-proxy. |
| מדדים מותאמים אישית של איזון עומסים בקצה העורפי | network.googleapis.com/loadbalancer/backend/lb_custom_metric |
הניצול הנוכחי של כל קבוצת קצה עורפי, על סמך המדדים המותאמים אישית שהגדרתם. |
| שיעור הקצה העורפי | network.googleapis.com/loadbalancer/backend/rate |
הבקשות שכל קבוצת קצה עורפי מקבלת בשנייה. |
| ניצול הקצה העורפי | network.googleapis.com/loadbalancer/backend/utilization |
הניצול המצטבר של המעבד (CPU) במכונות הווירטואליות בקבוצה, כשבר. |
| מספר הבקשות | loadbalancing.googleapis.com/https/request_count |
מספר הבקשות שמאזן העומסים החיצוני של אפליקציות (ALB) טיפל בהן |
| מספר הבייטים בבקשה | loadbalancing.googleapis.com/https/request_bytes_count |
מספר הבייטים שנשלחו כבקשות מלקוחות למאזן העומסים החיצוני של אפליקציות (ALB) |
| מספר הבייטים בתגובה | loadbalancing.googleapis.com/https/response_bytes_count |
מספר הבייטים שנשלחו כתגובות ממאזן העומסים החיצוני של אפליקציות (ALB) ללקוחות |
| זמני האחזור הכוללים | loadbalancing.googleapis.com/https/total_latencies |
התפלגות של זמן האחזור הכולל. זמן האחזור הכולל הוא הזמן במילי-שניות בין הבייט הראשון של הבקשה שהתקבלה על ידי שרת ה-proxy לבין הבייט האחרון של התגובה שנשלחה על ידי שרת ה-proxy. הוא כולל: הזמן שלוקח לשרת ה-Proxy לעבד את הבקשה, הזמן שלוקח לשלוח את הבקשה משרת ה-Proxy לקצה העורפי, הזמן שלוקח לקצה העורפי לעבד את הבקשה, הזמן שלוקח לשלוח את התגובה בחזרה לשרת ה-Proxy והזמן שלוקח לשרת ה-Proxy לעבד את התגובה ולשלוח אותה ללקוח. הוא לא כולל את ה-RTT בין הלקוח לשרת ה-proxy. בנוסף, הפסקות בין בקשות באותו חיבור שמשתמשות ב- בחיבורי WebSocket, השדה הזה מתייחס למשך הזמן הכולל של החיבור.* דוגמה: למאזן עומסים יש בקשה אחת לשנייה מבריטניה, כולן עם זמן אחזור של 100 אלפיות השנייה, ו-9 בקשות לשנייה מארה"ב, כולן עם זמן אחזור של 50 אלפיות השנייה. במהלך דקה מסוימת היו 60 בקשות מבריטניה ו-540 בקשות מארה"ב. מדדי המעקב שומרים על ההתפלגות בכל המאפיינים. אפשר לבקש מידע כמו:
|
| זמן הלוך ושוב (RTT) בקצה הקדמי† | loadbalancing.googleapis.com/https/frontend_tcp_rtt |
התפלגות של זמן ה-RTT בקצה הקדמי. זמן ה-RTT של ממשק הקצה הוא משך הזמן במילי-שניות שלוקח לנתונים לעבור מהלקוח לשרת ה-proxy ובחזרה. הוא כולל את הזמן שלוקח לבקשה לעבור מהלקוח לשרת ה-proxy ובחזרה משרת ה-proxy ללקוח. הערך הזה לא מתעדכן במהלך החיבור. לדוגמה, הגדרת חיבור (TCP) עם לחיצת יד משולשת תימשך 1.5 RTT. כשהבקשות מעובדות, מאזן העומסים דוגם את הזמן שלוקח לנתונים לעבור הלוך ושוב בין הלקוח לשרת ה-proxy, מחשב את הממוצע ומתעד ערך RTT מוחלק. זמן הלוך ושוב מוחלק הוא אלגוריתם שמטפל בשינויים ובחריגות שעשויים להתרחש במדידות של זמן הלוך ושוב. |
| חלק מקוד התגובה של הכיתה |
החלק היחסי של התשובות הכוללות של מאזן העומסים החיצוני של אפליקציות (ALB) שנמצאות בכל מחלקה של קוד תשובה (2xx, 4xx וכו'). ב-Monitoring, הערך הזה זמין רק בלוחות הבקרה שמוגדרים כברירת מחדל. האפשרות הזו לא זמינה במרכזי בקרה בהתאמה אישית. אתם יכולים להשתמש ב-Monitoring API כדי להגדיר התראות.
|
|
| מספר הבקשות לקצה העורפי | loadbalancing.googleapis.com/https/backend_request_count |
מספר הבקשות שנשלחו ממאזן העומסים החיצוני של האפליקציות אל רכיבי ה-backend. |
| מספר הבייטים של בקשות לקצה העורפי | loadbalancing.googleapis.com/https/backend_request_bytes_count |
מספר הבייטים שנשלחו כבקשות ממאזן העומסים החיצוני של האפליקציות אל רכיבי ה-backend. |
| מספר הבייטים בתגובה של הקצה העורפי | loadbalancing.googleapis.com/https/backend_response_bytes_count |
מספר הבייטים שנשלחו כתגובות מה-backends (כולל המטמון) למאזן העומסים החיצוני של אפליקציות (ALB). |
* כדי לעקוב אחרי חיבורי WebSocket, צריך ליצור שירות לקצה העורפי במיוחד בשביל WebSocket.
† יכול להיות שסכום זמני האחזור של Frontend RTT ו-Backend לא יהיה קטן או שווה לזמני האחזור הכוללים. הסיבה לכך היא שלמרות שאנחנו דוגמים את ה-RTT דרך השקע מה-GFE ללקוח בזמן שתגובת ה-HTTP מאושרת, אנחנו מסתמכים על דיווח של הליבה (kernel) בחלק מהמדידות האלה, ולא יכולים להיות בטוחים שלליבה תהיה מדידת RTT לתגובת ה-HTTP הנתונה. התוצאה הסופית היא ערך RTT מוחלק שמושפע גם מתגובות HTTP קודמות, מ-SYN/ACK ומלחיצות ידיים של SSL שלא משפיעות על התזמונים בפועל של בקשת ה-HTTP הנוכחית.
מדדים של אפליקציות ב-App Hub
מאזני עומסים של אפליקציות מדווחים גם על מדדים של כללי העברה ושירותים לקצה העורפי ספציפיים. המדדים האלה משתמשים בסוגי המשאבים במעקב gce_forwarding_rule ו-gce_backend_service, והם מדווחים על מאזני עומסים שמשתמשים בסכימת איזון העומסים EXTERNAL, EXTERNAL_MANAGED או INTERNAL_MANAGED.
כשרושמים כלל העברה או שירות לקצה העורפי באפליקציה של App Hub, המדדים האלה כוללים תוויות ספציפיות לאפליקציה. התוויות האלה מאפשרות לכם:
- בלוחות הבקרה של Application Monitoring אפשר לראות את האותות החשובים של מאזן העומסים, כמו תנועה, שיעור השגיאות בחיבור לשרת וזמן אחזור.
- לסנן ולקבץ את המדדים של מאזן העומסים לפי אפליקציה, שירות או עומס עבודה ב-App Hub במרכזי בקרה בהתאמה אישית ב-Monitoring.
בטבלה הבאה מפורטים המדדים שמדווחים על ידי מאזני עומסים של אפליקציות לגבי כללי העברה ושירותים לקצה העורפי:
| מדד | שם | משאב במעקב | תיאור |
|---|---|---|---|
| מספר הבקשות | loadbalancing.googleapis.com/application_lb/request_count |
gce_forwarding_rule |
מספר הבקשות שמטופלות על ידי מאזן העומסים. |
| גודל הבקשה (בייטים) | loadbalancing.googleapis.com/application_lb/request_bytes_count |
gce_forwarding_rule |
מספר הבייטים שנשלחו כבקשות מלקוחות למאזן העומסים. |
| בייטים של תגובה | loadbalancing.googleapis.com/application_lb/response_bytes_count |
gce_forwarding_rule |
מספר הבייטים שנשלחו כתגובות ממאזן העומסים ללקוחות. |
| זמני האחזור הכוללים | loadbalancing.googleapis.com/application_lb/total_latencies |
gce_forwarding_rule |
התפלגות זמן האחזור, שמחושב מרגע שהשרת מקבל את הבקשה ועד שהוא מקבל אישור מהלקוח על בייט התגובה האחרון. |
| מספר הבקשות לקצה העורפי | loadbalancing.googleapis.com/application_lb/backend_request_count |
gce_backend_service |
מספר הבקשות שנשלחו ממאזן העומסים לקצוות העורפיים. |
| בייטים של בקשות בקצה העורפי | loadbalancing.googleapis.com/application_lb/backend_request_bytes_count |
gce_backend_service |
מספר הבייטים שנשלחו כבקשות ממאזן העומסים לקצוות העורפיים. |
| בייטים של תגובות מה-backend | loadbalancing.googleapis.com/application_lb/backend_response_bytes_count |
gce_backend_service |
מספר הבייטים שנשלחו כתגובות משרתי ה-backend למאזן העומסים. |
| זמני האחזור של הקצה העורפי | loadbalancing.googleapis.com/application_lb/backend_latencies |
gce_backend_service |
התפלגות זמן האחזור, שמחושב מהרגע שבו שרת ה-proxy שולח את הבקשה לקצה העורפי ועד שהשרת מקבל את הבייט האחרון של התגובה מהקצה העורפי. |
אפשר לסנן ולקבץ את המדדים האלה לפי תוויות המדדים הבאות:
protocol, response_code, response_code_class, cache_result,
matcher_type, matcher_name, matched_path, load_balancing_scheme,
client_country ו-proxy_continent. לתיאורי התוויות, עיינו ברשומות של המדדים האלה ברשימת המדדים שלGoogle Cloud .
במאמר משאבי תשתית נתמכים מוסבר אילו משאבים של מאזני עומסים משולבים ב-App Hub.
סינון מאפיינים של מדדים
אפשר להחיל מסננים על מדדים של מאזני עומסים של אפליקציות (ALB) חיצוניים.
המדדים נצברים לכל מאזן עומסים קלאסי של אפליקציות (ALB) ולכל מאזן עומסים גלובלי חיצוני של אפליקציות (ALB). אפשר לסנן מדדים נצברים לפי המאפיינים הבאים של resource.type="http_load_balancer" או resource.type="https_lb_rule". חשוב לזכור שלא כל המאפיינים זמינים בכל המדדים.
| מאפיין (property) | תיאור |
|---|---|
backend_scope |
Google Cloud ההיקף (אזור או תחום) של קבוצת המכונות של שירות הקצה העורפי שטיפלה בחיבור. אם לא הייתה קבוצת מכונות זמינה או אם הבקשה טופלה על ידי ישות אחרת, יוצג אחד מהערכים הבאים במקום האזור או התחום של קבוצת המכונות של השירות לקצה העורפי.
כשבוחרים בפירוט הזה, בתרשימים מוצגים מדדי קצה עורפי (ממאזן העומסים לקצוות העורפיים), ולא מדדי קצה קדמי (מהלקוח למאזן העומסים). |
backend_type |
השם של קבוצת הקצה העורפי שטיפלה בבקשה של הלקוח.
הערך יכול להיות
|
backend_target_type |
שם השירות לקצה העורפי שטיפל בבקשה. הערכים האפשריים הם BACKEND_SERVICE, BACKEND_BUCKET, UNKNOWN אם לא הוקצה בק-אנד, או NO_BACKEND_SELECTED אם אירע אירוע שגיאה או הפרעה לפני שנבחר בק-אנד, אם בוצעה הפניה לכתובת URL אחרת או אם מאזן עומסים קלאסי של אפליקציות (ALB) עם בק-אנדים בלי שרת (serverless) החזיר תגובה מסוג 200 OK. |
matched_url_path_rule |
כלל הנתיב של מפת URL שתואם לתחילית של בקשת ה-HTTP(S) (עד 50 תווים). |
forwarding_rule_name |
השם של כלל ההעברה שבו הלקוח משתמש כדי לשלוח את הבקשה. |
url_map_name |
כלל הנתיב או כלל המסלול של מפת URL שהוגדר כחלק ממפתח מפת URL. הערכים יכולים להיות
|
target_proxy_name |
השם של אובייקט שרת ה-proxy ל-HTTP(S) שאליו מפנה כלל ההעברה. |
backend_target_name |
השם של יעד הקצה העורפי. היעד יכול להיות שירות לקצה העורפי או קטגוריית קצה עורפי. אם לא הוקצה קצה עורפי, יוחזר הערך UNKNOWN.
|
backend_name |
השם של קבוצת המכונות, הקטגוריה או ה-NEG של ה-backend.
הערך UNKNOWN מוחזר אם לא הוקצה בק-אנד, או הערך NO_BACKEND_SELECTED אם אירע אירוע שגיאה או הפרעה לפני שנבחר בק-אנד, אם התרחשה הפניה לכתובת URL או אם מאזן עומסים קלאסי של אפליקציות (ALB) עם בק-אנדים בלי שרת החזיר תגובה של 200 OK. |
backend_scope_type |
סוג ההיקף של קבוצת הקצה העורפי. יכול להיות הערך |
proxy_continent |
היבשת של ה-GFE של HTTP(S) שסיים את חיבור ה-HTTP(S) – לדוגמה, America, Europe, Asia |
protocol |
הפרוטוקול שבו הלקוח משתמש, אחד מהבאים: HTTP/1.0, HTTP/1.1, HTTP/2.0, QUIC/HTTP/2.0, UNKNOWN. |
response_code |
קוד הסטטוס של ה-HTTP של הבקשה. |
response_code_class |
מחלקה של קוד סטטוס של HTTP של הבקשה: 200, 300, 400, 500 או 0 אם אין. |
cache_result |
תוצאת המטמון של הצגת בקשת HTTP על ידי שרת proxy: HIT, MISS, DISABLED, PARTIAL_HIT (לבקשה שמוצגת באופן חלקי מהמטמון ובאופן חלקי מה-backend) או UNKNOWN. |
client_country |
המדינה של הלקוח ששלח את בקשת ה-HTTP, לדוגמה United States או Germany. |
load_balancing_scheme |
סכמת איזון העומסים שבה נעשה שימוש. אם משתמשים במאזן עומסים קלאסי של אפליקציות (ALB), הערך הוא EXTERNAL. אם משתמשים במאזן עומסים גלובלי חיצוני של אפליקציות (ALB), הערך הוא EXTERNAL_MANAGED. |