מבוא לפתרון בעיות ב-Cloud Run

בדף הזה מתוארות אסטרטגיות נפוצות לפתרון בעיות שקשורות לשגיאות ב-Cloud Run. ב-Service Health בהתאמה אישית מתפרסמים כל האירועים ב-Cloud Run שנובעים מהתשתית הבסיסית של Google Cloud , כדי שתוכלו לזהות שיבושים בשירות של Google Cloud שמשפיעים על הפרויקטים שלכם. מומלץ גם להגדיר התראות על אירועים במרכז האישי ב-Service Health. מידע על אירועים שמשפיעים על כל שירותי Google Cloud Google Cloud זמין בלוח הבקרה Google Cloud Service Health.

כדי לפתור בעיות שקשורות למשאב Cloud Run, אפשר לעיין בקטעים הבאים במדריך לפתרון בעיות ב-Cloud Run:

אסטרטגיות לפתרון בעיות ב-Cloud Run

בקטעים הבאים מוסבר איך להשתמש באסטרטגיות כלליות לפתרון בעיות כדי לפתור את השגיאה. אם אתם ממשיכים להיתקל בשגיאות גם אחרי שפעלתם לפי השלבים במדריך פתרון בעיות, כדאי לעיין בקטע מה עושים עכשיו.

יצירת יומנים טובים באמצעות Cloud Logging

קל יותר לפתור בעיות במשאב Cloud Run אם יש לכם יומנים טובים לניפוי באגים. מומלץ לכתוב את היומנים כך שיומני הקונטיינר יהיו קשורים ליומן הבקשות.

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

חקירת מקרים באמצעות הכלי Logs Explorer

כל יומן בקשות ב-Cloud Run מכיל שדה instanceId שמזהה מופע שמטפל בבקשה. בהתאם לערך המקביליות שאתם מציינים, מופע יחיד יכול לטפל בכמה בקשות בו-זמנית.

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

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

כדי לסנן מופע ספציפי ב-Logs Explorer:

  1. במסוף Google Cloud , נכנסים לדף Logs Explorer:

    כניסה לדף Logs Explorer

  2. בוחרים פרויקט קיים Google Cloud בחלק העליון של הדף, או יוצרים פרויקט חדש.

  3. בוחרים את המשאב Cloud Run Revision לשירות, או Cloud Run Job למשימה.

  4. אפשר להרחיב רשומה ביומן כדי לסנן לפי מופע ספציפי.

  5. לוחצים על הערך של מזהה המופע ובוחרים באפשרות הצגת רשומות תואמות.

במהלך החקירה של המקרים, אתם יכולים להשתמש ב-Gemini Cloud Assist Investigations כדי לקבל תובנות נוספות לגבי היומנים. מידע נוסף על דרכים שונות להתחלת חקירה באמצעות Logs Explorer מופיע במאמר פתרון בעיות באמצעות Gemini Cloud Assist Investigations במסמכי Gemini.

פתרון בעיות שקשורות לזמני אחזור לא צפויים של בקשות

אם נתקלים בבעיות שקשורות לזמן האחזור, אפשר לנסות את הפתרונות הבאים:

  1. בודקים אם זמן האחזור משפיע על כל הבקשות למשאב Cloud Run או רק על אחוז קטן מהן. ‫Cloud Run משולב באופן אוטומטי עם Cloud Monitoring בלי צורך בהגדרה או בתצורה.

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

    1. במסוף Google Cloud , נכנסים לדף Cloud Run:

      כניסה ל-Cloud Run

    2. בתפריט הניווט הימני, בוחרים שירות או משרה מהרשימות שזמינות.

    3. לוחצים על הכרטיסייה METRICS כדי להציג את לוח הבקרה Request latencies.

    כדי לראות את מדדי זמן האחזור ב-Cloud Monitoring, בוחרים באפשרות Cloud Run Revision > Request_latencies > Request latency מתוך רשימת המדדים.

    רשימה של כל המדדים הזמינים ב-Cloud Run ופרטים נוספים מופיעים במאמר מדדים שלGoogle Cloud ב-Cloud Monitoring.

  2. מזהים את הבקשה עם זמן האחזור הארוך כדי להבין מהו מקור זמן האחזור. אפשר להשתמש ב-Cloud Trace או ב-Cloud Logging כדי להבין כמה זמן לקח לבקשה מסוימת.

    כדי לזהות בקשות עם זמן אחזור גבוה באמצעות Cloud Logging, צריך להחיל את המסנן traceSampled=true כדי ליצור קורלציה בין היומנים ב-Cloud Logging לבין העקבות ב-Cloud Trace. מידע נוסף זמין במאמר בנושא אינטגרציה עם Cloud Logging.

    לפעמים תלויות כמו בקשות לשירותים אחרים עלולות לגרום לבעיות של זמן אחזור. כדי לזהות בקשות כאלה, צריך להפעיל רישום מפורש ביומן שמתמקד בבקשות. אם לא תייצאו יומנים כאלה, יכול להיות שיופיעו בעיות של זמן אחזור שמקורן בשירות Cloud Run.

    בנוסף, מומלץ להעריך את העליות החדות בזמן האחזור בהקשר של חלון הזמן שנבחר. המשמעות של עלייה חדה היא יחסית. עלייה חדה גדולה בחלון קטן עשויה להיות זניחה בחלון גדול יותר, ולהיפך. לכן, חלון הזמן משפיע באופן משמעותי על הפרשנות של נתוני ההשהיה.

  3. כדי לקצר את זמן האחזור של בקשות נכנסות ולהימנע מהפעלה איטית במצב התחלתי (cold start), כדאי להגדיל את מספר המופעים המינימליים. כדאי גם לשנות את קוד המקור ולהתאים את הגדרות ההרחבה כדי להגביל את מספר החיבורים לשירות גיבוי.

    מידע נוסף זמין במאמר בנושא אופטימיזציה של הביצועים.

פתרון בעיות בקישוריות

אם נתקלתם בבעיות קישוריות בשירות Cloud Run, כדאי לנסות את האסטרטגיות והכלים הבאים כדי לאבחן את הבעיה:

  • PCAP sidecar: כדי לבצע ניתוח מעמיק ברמת הרשת, פורסים PCAP sidecar לצד שירות Cloud Run. קונטיינר ה-sidecar הזה מבצע לכידה של חבילות נתונים באמצעות tcpdump באותו מרחב שמות של הרשת. ה-sidecar מופרד מהקונטיינר הראשי של ה-ingress, ולא צריך לבצע בו שינויים כדי ללכוד מנות מידע. בנוסף, קובצי sidecar משתמשים במשאבים משלהם, וכך מונעים מ-tcpdump להתחרות על המשאבים שהקציתם לשירות הראשי.

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

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

פתרון בעיות בעזרת Gemini

אתם יכולים להשתמש בצ'אט של Gemini Cloud Assist כדי לנתח יומנים ולפתור בעיות. בעזרת Gemini, אתם יכולים לזהות ולפתור שגיאות במהירות באמצעות יכולות ניתוח היומנים של הכלי, וכך לחסוך זמן ומאמץ יקרים.

כדי להשתמש ב-Gemini Cloud Assist ממסוף Google Cloud :

  1. מוודאים ש-Gemini Cloud Assist מוגדר לחשבון המשתמש ולפרויקט. Google Cloud

  2. מגדירים את סביבת הפיתוח של Cloud Run בפרויקט Google Cloud ומוודאים שיש לכם את הרשאות הפריסה המתאימות.

  3. נכנסים לדף Cloud Run במסוף Google Cloud .

    כניסה ל-Cloud Run

  4. בסרגל הכלים של המסוף, בוחרים פרויקט ב- Google Cloud . להשתמש בפרויקט שמשויך למזהה פרויקט ששלחתם אחרי שקיבלתם גישה ל-Gemini Cloud Assist.

  5. לוחצים על סמל הנצנוץ Open or close Gemini AI chat.

    החלונית של Gemini תיפתח.

  6. אם צריך, לוחצים על אישור כדי לאשר את התנאים.

  7. אם יש לכם שאלה לגבי אפליקציה ספציפית, כדי לספק הקשר, עברו לדף שבו מוצג המשאב לפני שאתם שואלים את השאלה. כש-Gemini יוצר תשובה, הוא כולל מידע על הדף הנוכחי במסוף ועל הפרויקט.

  8. מזינים הנחיה בחלונית Gemini.

    בטבלה הבאה מופיעות כמה דוגמאות להנחיות לשימוש ב-Gemini Cloud Assist עם Cloud Run.

    הנחיה סוג התגובה
    "תוכל להסביר לי את הודעת השגיאה שמופיעה ביומני המכולות של Cloud Run?" אם לא מציינים הודעת שגיאה ספציפית בהנחיה, הפלט כולל הנחיות לפתרון בעיות שקשורות להודעות שגיאה נפוצות ביומן של קונטיינר Cloud Run.
    ‫"Can you explain this error message I'm seeing in my logs for my Cloud Run service?

    HTTP 429 The request was aborted because there was no available instance. The Cloud Run service might have reached its maximum container instance limit or the service was otherwise not able to scale to incoming requests. This might be caused by a sudden increase in traffic, a long container startup time or a long request processing time."
    הסבר על הודעת השגיאה ב-Cloud Run ועל דרכים לפתרון הבעיה.
    "How do I fix the following error message when deploying my Cloud Run service?

    HTTP 404: Not found
    סיבות נפוצות לשגיאה ואיך לפתור אותה.
    "השירות שלי ב-Cloud Run קורס כל הזמן. מה יכולה להיות הסיבה לכך?" הגישה לחקירת הסיבה לבעיה והסבר איך לפתור אותה.
    "איך אפשר לדעת אם שגיאת 5XX שמופיעה ביומנים נגרמה בגלל הפסקת שירות בתשתית של Google?" שלבים לקביעת הגורם לשגיאת 5XX.
    "איך אפשר לזהות את הגורם לשגיאה הזו: com.google.apps.framework.request.BadRequestException Project PROJECT has serving status SYSTEM_DISABLED and cannot be modified?" ההודעה מצביעה על כך ש Google Cloud הפרויקט הושבת ברמת המערכת על ידי אדמין. כולל שלבים לבדיקה מעמיקה יותר של הסיבה.
    "למה יש לי גישה לשירות Cloud Run מדפדפן אם הגדרתי ingress=internal?" הסבר על ההתנהגות הצפויה כשמגדירים את ההגדרה ingress לערך internal. כולל תרחישים אחרים שבהם יכול להיות שגישה תפעל מהדפדפן.

לפרטים נוספים, אפשר לעיין במקורות המידע הבאים:

שימוש ב-Gemini Cloud Assist Investigations

בנוסף לצ'אט אינטראקטיבי, Gemini Cloud Assist יכול לבצע ניתוח מעמיק ואוטומטי יותר באמצעות Gemini Cloud Assist Investigations. התכונה הזו משולבת ישירות בתהליכי עבודה כמו Logs Explorer, והיא כלי רב עוצמה לניתוח שורש הבעיה.

כשמתחילים חקירה משגיאה או ממשאב ספציפי, Gemini Cloud Assist מנתח יומנים, הגדרות ומדדים. הכלי משתמש בנתונים האלה כדי ליצור תצפיות והיפותזות מדורגות לגבי הגורמים הסבירים לבעיה, ואז מספק המלצות לגבי השלבים הבאים. אם יש לכם חבילת תמיכה, אתם יכולים גם להעביר את תוצאות החקירה ל Google Cloud פנייה לתמיכה, כדי לספק הקשר נוסף שיעזור לפתור את הבעיה מהר יותר.

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

מידע נוסף על דרכים שונות להתחלת חקירה זמין במאמר פתרון בעיות ב-Gemini Cloud Assist Investigations במסמכי Gemini.

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

אם לא הצלחתם למצוא פתרון לבעיה שלכם במסמכי התיעוד של Cloud Run, תוכלו לפעול לפי השלבים הבאים: