סקירה כללית על מעקב סינתטי

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

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

  • בדיקות זמינות מאפשרות לשלוח שאילתה לאפליקציה שמגיבה לבקשות HTTP, ‏ HTTPS או TCP, באופן תקופתי. Google Cloud בדיקות זמינות יכולות לבדוק נקודות קצה (endpoints) ציבוריות או פרטיות, והן יכולות לאמת את נתוני התגובה.

  • בעזרת כלים מותאמים אישית ומבוססי-Mocha למעקב סינתטי, אפשר לפרוס חבילה של בדיקות שבהן אפשר להשתמש כדי לבדוק אפליקציה שמגיבה לבקשות HTTP או HTTPS. כדי ליצור את המעקב הסינתטי הזה, מתחילים עם framework שסופק על ידי Cloud Monitoring – מותאם אישית או Mocha – ואז כותבים את הבדיקות. אם יש לכם גישה ל-Gemini Code Assist בפרויקט הזה, תוכלו להזין הנחיה כדי ליצור את קוד הבדיקה.

  • בודקי קישורים שבורים מאפשרים לבדוק מעת לעת URI, ולבדוק מספר קישורים שניתן להגדרה שנמצאים ב-URI הזה. Google Cloud

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

מסוףGoogle Cloud Cloud Monitoring API Terraform ספריות לקוח
בדיקות זמני פעילות Y Y Y Y
מכשירים סינתטיים לניטור Y Y Y
בודקי קישורים מנותקים Y Y Y

מידע על בדיקות זמני פעילות

יש שני סוגים של בדיקות זמני פעילות:

  • בדיקות זמני פעילות ציבוריות שולחות בקשות מכמה מיקומים ברחבי העולם לכתובות URL או למשאבים שזמינים לציבור. Google Cloud
  • בדיקות זמינות פרטיות שולחות בקשות לכתובות IP פנימיות של משאבים. Google Cloud בדיקות זמינות פרטיות יכולות לשלוח בקשות ברשת פרטית למשאבים כמו מכונה וירטואלית (VM) או מאזן עומסים פנימי (ILB) ברמה 4.

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

מערכת ביצוע הבקשות לבדיקות זמני פעילות, שמסופקת על ידיGoogle Cloud, מנהלת את הפעולות הבאות:

  • הפעלת הבודקים שהוגדרו.
  • אימות התוצאות.

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

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

    מידע נוסף על המדדים האלה זמין בערכים uptime_check בטבלת המדדים של monitoring.

  • כתיבת רשומות ביומן במקרה של כשל.

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

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

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

כשיוצרים בדיקה סינתטית, פורסים פונקציית Cloud Run מדור שני שמבוססת על Cloud Run. הפונקציה צריכה להיכתב ב-Node.js ולהסתמך על מסגרת Synthetics SDK בקוד פתוח. שירות Cloud Monitoring מפיץ את המסגרת הזו ומנהל אותה.

‫Cloud Monitoring תומך בסוגים הבאים של בדיקות סינתטיות:

מערכת ביצוע הבקשות של כלי המעקב הסינתטי, שמסופקת על ידיGoogle Cloud, מנהלת את הפעולות הבאות:

  • הפעלה תקופתית של פונקציית Cloud Run.
  • איסוף ואחסון של תוצאות כל הרצה:

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

    מידע על צפייה בתוצאות ההרצה מופיע במאמר בנושא בדיקת תוצאות של בדיקות סינתטיות.

מעקב אחר התוצאות וצפייה בהן

אפשר לראות את התוצאות של בדיקות זמינות ובדיקות סינתטיות במסוף Google Cloud :

  • לגבי בדיקות סינתטיות, עוברים לדף Synthetic monitors.
  • כדי לבדוק את זמני הפעילות, עוברים לדף בדיקת זמני פעילות.

כדי לקבל התראה כשבדיקת זמינות או בדיקה סינתטית נכשלות, צריך ליצור מדיניות התראות באמצעות מסוףGoogle Cloud או Google Cloud CLI.

פתרון בעיות של כשלים

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

מיקום הנתונים

אל תשתמשו בבדיקות סינתטיות או בבדיקות זמני פעילות אם הגדרתם Assured Workloads כי יש לכם דרישות לגבי מיקום אחסון הנתונים או רמת השפעה 4 (IL4).

‫Cloud Monitoring לא מבטיח שהנתונים בבקשה לבדיקת זמינות יישמרו במיקום גיאוגרפי ספציפי.

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

תמחור

למידע על התמחור של Cloud Monitoring, אפשר לעיין בדף התמחור של Google Cloud Observability.

מגבלות

המגבלות הבאות חלות על השימוש שלכם בבדיקות סינתטיות:

קטגוריה ערך
בדיקות זמני פעילות לכל היקף מדדים * 100
מספר הפינגים של ICMP המקסימלי לכל בדיקת זמינות ציבורית 3
‫Synthetic monitors per metrics scope 100
*המגבלה הזו חלה על מספר ההגדרות של בדיקות זמינות. כל הגדרה של בדיקת זמינות כוללת את מרווח הזמן בין בדיקות הסטטוס של המשאב שצוין.
מידע על הגדלת המגבלה הזו זמין במאמר בנושא בקשה לשינוי המכסות.

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