Cloud Monitoring אוסף, מאחסן ומנתח נתונים של מדדים כדי לעזור לכם להבין את ההתנהגות, התקינות והביצועים של האפליקציות וGoogle Cloud השירותים שלכם. Cloud Monitoring אוסף באופן אוטומטי מדדי ביצועים עבור רוב Google Cloud השירותים. אפשר גם לאסוף מדדים של Prometheus באמצעות השירות המנוהל של Google Cloud ל-Prometheus, או להתקין את סוכן תפעול במכונות וירטואליות (VM) של Compute Engine כדי לאסוף מדדים ויומנים מהאפליקציות ומתוכנות של צד שלישי.
בעזרת שירותי ההתראות, הבדיקות וההדמיה של Cloud Monitoring, אתם יכולים לעקוב אחרי העומס והביצועים של השירות, לוודא שהאתר רספונסיבי ולפקח על התקינות של אפליקציות מרכז האפליקציות. אפשר לגשת לרוב השירותים של Cloud Monitoring ולנהל אותם באמצעות מסוף Google Cloud , Cloud Monitoring API, Google Cloud CLI או Terraform.
שירותי Cloud Monitoring
Cloud Monitoring מספק שירותים שונים שבעזרתם אפשר להבין את התקינות והביצועים של האפליקציות ושל שירותי Google Cloud אחרים שבהם אתם משתמשים.
התראות ב-Cloud Monitoring
כדי לקבל התראה כשערך של מדד לבדיקת ביצועים עומד בקריטריונים שהגדרתם, צריך ליצור מדיניות התראות. מדיניות ההתראות כוללת את רשימת האנשים או הקבוצות שיקבלו התראות. Monitoring תומך בערוצים נפוצים להתראות, כולל אימייל, Cloud Mobile App ושירותים כמו PagerDuty או Slack. לדוגמה, אתם יכולים ליצור מדיניות התראות כדי לקבל התראה כשניצול המעבד של מכונה וירטואלית חורג מ-80%.
כל התראה כוללת מידע רלוונטי על כשל, וגם קישור להתראה. התראה היא רשומה קבועה שמאחסנת מידע שאפשר להשתמש בו כדי לפתור את בעיית הכשל. בדרך כלל, ברשומה מפורטים הסטטוס של ההתראה, קישורים ליומנים, תרשים של נתוני המדדים שנרשמו, תוויות ומשך הזמן.
שירות ההתראות משולב עם הרבה שירותים. Google Cloud אם יש שילובים כאלה, יכול להיות שתופיע חלונית עם רשימה של התראות מומלצות, או לחצן בתרשים שמאפשר ליצור מדיניות התראות. בשני המקרים, מדיניות ההתראות מוגדרת מראש. אתם רק צריכים לציין את רשימת האנשים או הקבוצות שרוצים לשלוח להם התראות.
אפשר ליצור ולנהל מדיניות התראות באמצעות מסוף Google Cloud , Cloud Monitoring API, Google Cloud CLI או Terraform.
מעקב ואימות יזומים
כדי לבדוק את הזמינות, העקביות והביצועים של השירותים, האפליקציות, דפי האינטרנט וממשקי ה-API, צריך ליצור בדיקות סינתטיות. לדוגמה, אפשר לבדוק את התגובה של נקודות קצה מסוג HTTP, HTTPS ו-TCP באמצעות בדיקות זמינות, ולקבל התראה כשנקודת קצה לא מגיבה. אפשר גם ליצור כלי לבדיקת קישורים שבורים כדי לסרוק דף אינטרנט ואז לקבל התראה כשמזוהים קישורים שבורים.
אפשר ליצור ולנהל בדיקות סינתטיות באמצעות Google Cloud המסוף, Cloud Monitoring API, Google Cloud CLI או Terraform.
המחשה של נתונים
כשמפעילים Google Cloud משאבים או רושמים אפליקציות ב-מרכז האפליקציות, שירות מרכז הבקרה יוצר באופן אוטומטי מרכזי בקרה שמנוהלים על ידיGoogle Cloud. במרכזי הבקרה האלה מוצג מידע שנאסף ועוזר לכם להבין את תקינות המשאבים והאפליקציות שלכם. לדוגמה, עבור אפליקציה ב-מרכז האפליקציות, נוצרים מרכזי בקרה לאפליקציה ולכל אחד מהשירותים ועומסי העבודה שלה. בלוחות הבקרה האלה מוצג מידע כמו יומן של אפליקציה או נתוני מדדים, ומספר ההתראות הפתוחות.
יכול להיות שמרכזי הבקרה שנוצרו על ידי Google Cloud יספקו לכם מספיק מידע כדי להשלים חקירה. עם זאת, יכול להיות שהם לא יספקו את הנתונים המדויקים שאתם צריכים כדי לראות מגמות, לזהות חריגות או להציג פרטים אחרים על הנתונים שלכם. כדי להשלים את המשימות האלה, אפשר להשתמש בלוח הבקרה ובשירותי התרשימים:
כדי להגדיר אילו נתונים יוצגו ובאיזה פורמט, יוצרים לוח בקרה בהתאמה אישית. לדוגמה, אפשר לייבא לוח בקרה של Grafana או להתקין לוח בקרה מתבנית.
במרכזי הבקרה המותאמים אישית שלכם יכולים להופיע הנתונים הבאים:
- תרשימים וטבלאות שבהם מוצגים נתוני מדדים
- נתוני יומן וקבוצות שגיאות
- תרשימים של כללי מדיניות התראות
- מידע על התראות
- טקסט
- אירועים, כמו הפעלה מחדש או קריסה, שמשפיעים על הפעולה של מערכת.
אפשר ליצור ולנהל לוחות בקרה באמצעות מסוףGoogle Cloud או API.
שירות התרשימים, Metrics Explorer, מאפשר לכם להציג נתונים של סדרות זמנים בצורה חזותית ולחקור אותם במהירות. הגדרות התרשים מאפשרות להשוות בין הנתונים הנוכחיים לנתונים קודמים, להציג חריגים ואחוזונים ולהציג כמה מדדים. אפשר גם לשמור תרשימים בלוח בקרה בהתאמה אישית.
איסוף נתונים ואחסון שלהם
Cloud Monitoring אוסף ומאחסן את סוגי נתוני המדדים הבאים:
- מדדי מערכת שנוצרו על ידי שירותי Google Cloud . המדדים האלה מספקים מידע על אופן הפעולה של שירות.
- מדדים של המערכת והאפליקציות שסוכן התפעול אוסף לגבי משאבי המערכת ואפליקציות שפועלות במכונות ב-Compute Engine. אפשר להגדיר את סוכן תפעול לאיסוף מדדים מפלאגינים של צד שלישי, כמו שרתי אינטרנט של Apache או Nginx, או מסדי נתונים של MongoDB או PostgreSQL.
מדדים בהגדרת המשתמש שנוצרו באמצעות Cloud Monitoring API או באמצעות ספרייה כמו OpenTelemetry.
מדדים חיצוניים שמוגדרים על ידי ספריות מסוימות של קוד פתוח או על ידי ספקי צד שלישי.
מדדי Prometheus שנאספים על ידי השירות המנוהל של Google Cloud ל-Prometheus, או באמצעות סוכן תפעול וPrometheus receiver או OTLP receiver.
- מדדים מבוססי-יומן שמתעדים מידע מספרי על היומנים שנכתבו ב-Cloud Logging. מדדים מבוססי-יומן שמוגדרים על ידי Google כוללים ספירות של השגיאות שהשירות מזהה ואת המספר הכולל של רשומות היומן שמתקבלות בפרויקט Google Cloud . אפשר גם להגדיר מדדים מבוססי-יומן.
שפות שאילתה ל-Cloud Monitoring
כשיוצרים מדיניות התראות או תרשים, צריך לספק שאילתה שמתארת את הנתונים שרוצים לעקוב אחריהם או להציג אותם בתרשים:
Google Cloud מסוף: אפשר לבנות את השאילתה על ידי בחירה באפשרויות בתפריטים, או לכתוב שאילתה. עורכי שאילתות זמינים עבור Prometheus Query Language (PromQL). עורך השאילתות מספק בדיקות תחביר והצעות. אפשר גם לכתוב ביטוי של מסנן Monitoring.
Cloud Monitoring API: ה-API תומך ב-Prometheus Query Language (PromQL) ובביטויי סינון של Monitoring.
מעקב אחרי מדדים של כמה Google Cloud פרויקטים
כדי לראות ולעקוב אחרי נתוני סדרות הזמן של כמהGoogle Cloud פרויקטים וחשבונות AWS דרך ממשק יחיד, צריך להגדיר היקף מדדים של כמה פרויקטים.
כברירת מחדל, דפי Cloud Monitoring במסוף Google Cloud מספקים גישה רק לסדרות הזמן שמאוחסנות בפרויקט ההיקף. פרויקט ההיקף הוא הפרויקט שבחרתם באמצעותGoogle Cloud הכלי לבחירת פרויקטים במסוף. בפרויקט ההיקף מאוחסנים ההתראות, הבדיקות הסינתטיות ולוחות הבקרה שהגדרתם.
פרויקט ההיקף מארח גם היקף מדדים. היקף המדדים מגדיר את הפרויקטים והחשבונות שהמדדים שלהם גלויים לפרויקט ההיקף. אתם יכולים להגדיר את היקף המדדים בפרויקט כך שיכלול נתונים של סדרות זמנים מפרויקטים אחרים Google Cloud ומחשבונות AWS. במאמר הגדרת היקף מדדים למספר פרויקטים מוסבר איך משנים את היקף המדדים.
מודל הנתונים של Cloud Monitoring
בקטע הזה מוצג מודל הנתונים של Cloud Monitoring:
סוג מדד מתאר משהו שנמדד. דוגמאות לסוגי מדדים: ניצול ה-CPU של מכונה וירטואלית ואחוז הדיסק שנמצא בשימוש.
סדרת זמנים היא מבנה נתונים שמכיל מדידות של מדד עם חותמת זמן ומידע על המקור והמשמעות של המדידות האלה.
הנה כמה פרטים על מה שסדרת זמן מכילה:
המערך
pointsמכיל את המדידות עם חותמת הזמן.זו דוגמה למערך
pointsעם שני ערכים:"points": [ { "interval": { "startTime": "2020-07-27T20:20:21.597143Z", "endTime": "2020-07-27T20:20:21.597143Z" }, "value": { "doubleValue": 0.473005 } }, { "interval": { "startTime": "2020-07-27T20:19:21.597239Z", "endTime": "2020-07-27T20:19:21.597239Z" }, "value": { "doubleValue": 0.473025 } }, ],כדי להבין את המשמעות של ערך מסוים, צריך לעיין בנתונים האחרים שנכללים בסדרת הזמן ובהגדרות של הנתונים האלה.
בשדה
resourceמתואר רכיב החומרה או התוכנה שנמצא במעקב. ב-Cloud Monitoring, רכיב החומרה או התוכנה נקרא משאב במעקב. דוגמאות למשאבים שנמצאים במעקב כוללות מכונות של Compute Engine ואפליקציות של App Engine. רשימה של משאבים במעקב זמינה במאמר רשימת משאבים במעקב.דוגמה לשדה
resource:"resource": { "type": "gce_instance", "labels": { "instance_id": "2708613220420473591", "zone": "us-east1-b", "project_id": "sampleproject" } }בשדה
typeמופיע המשאב שבמעקב כ-gce_instance, מה שמציין שהמדידות האלה מתבצעות במכונה וירטואלית של Compute Engine.השדה
labelsמכיל צמדי מפתח/ערך שמספקים מידע נוסף על המשאב שבמעקב. בסוגgce_instance, התוויות מזהות את מכונת ה-VM שמנוטרת.
בשדה
metricמתואר מה נמדד.דוגמה לשדה
metric:"metric": { "labels": { "instance_name": "test" }, "type": "compute.googleapis.com/instance/cpu/utilization" },- בשביל Google Cloud שירותים, השדה
typeמציין את השירות ואת מה שעובר מעקב. בדוגמה הזו, שירות Compute Engine מודד את ניצול המעבד. אם השדהtypeמתחיל ב-customאו ב-external, המדד הוא מדד מותאם אישית או מדד שהוגדר על ידי צד שלישי.
- השדה
labelsמכיל צמדי מפתח/ערך שמספקים מידע נוסף על המדידה. התוויות האלה מוגדרות כחלק מMetricDescriptor, שהוא מבנה נתונים שמגדיר את המאפיינים של הנתונים שנמדדים. הערךMetricDescriptorשל המדדcompute.googleapis.com/instance/cpu/utilizationכולל את התוויתinstance_name.
- בשביל Google Cloud שירותים, השדה
בשדה
metricKindמתואר הקשר בין מדידות סמוכות בסדרת זמן:GAUGEמדדים שומרים את הערך של הדבר שנמדד בנקודת זמן מסוימת – לדוגמה, רשומה של טמפרטורה לפי שעה.CUMULATIVEמדדים שומרים את הערך המצטבר של מה שנמדד ברגע נתון בזמן – לדוגמה, מד מרחק ברכב.DELTAמדדים שומרים את השינוי בערך של הדבר שנמדד לאורך תקופה מסוימת – לדוגמה, סיכום של מלאי שמציג את הרווחים או ההפסדים של המלאי.
בשדה
valueTypeמציינים את סוג הנתונים של המדידה:INT64,DOUBLE,BOOL,STRINGאוDISTRIBUTION.
- אפשר להציג את ניצול המעבד של כל מכונה וירטואלית.
- כדי להציג את ניצול המעבד (CPU) של מופע ספציפי של מכונה וירטואלית, צריך לסנן את סדרת הזמן לפי ערך יחיד של התווית
instance_id. אפשר לקבץ את מופעי מכונות ה-VM לפי התווית
machine_type, ואז להציג את ממוצע השימוש במעבד. בצילום המסך הבא מוצג תרשים עם ההגדרה הזו:
תמחור
למידע על התמחור של Cloud Monitoring, אפשר לעיין בדף התמחור של Google Cloud Observability.
המאמרים הבאים
- כדי להתנסות ב-Cloud Monitoring, אפשר לנסות את המדריך למתחילים למעקב אחרי מכונה של Compute Engine.
- מידע על הגדרת Google Cloud פרויקט כדי להציג מדדים של כמה פרויקטים Google Cloud וחשבונות AWS זמין במאמר סקירה כללית של היקפי מדדים.
מידע על מודל הנתונים של Cloud Monitoring זמין במאמר מדדים, סדרות זמנים ומשאבים.
מידע על Cloud Monitoring API מופיע במאמר ממשקי API והפניות.
רשימות של מדדים ומשאבים במעקב זמינות במאמרים רשימת מדדים ורשימת משאבים במעקב.