רכיבים של מודל המדדים

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

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

כמה מילים על תוויות

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

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

במאמר תוויות מוסבר בהרחבה איך משתמשים בתוויות.

סוגי המשאבים במעקב

משאב במעקב הוא משאב שממנו נאספים נתוני המדדים. ב-Cloud Monitoring יש תמיכה בכ-270 סוגים של משאבים במעקב.

סוגי המשאבים במעקב כוללים צמתים ומשימות גנריים, רכיבים ארכיטקטוניים ב-Google Kubernetes Engine, טבלאות ב-Bigtable, משאבים שונים של AWS ועוד.

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

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

סוג לדוגמה של משאב במעקב

בתמונה הבאה מוצגת הרשומה ברשימה של קטגוריה ב-Cloud Storage:

רשימה של הקטגוריה של Cloud Storage.

כל הרשומות ברשימה כוללות את הפרטים הבאים:

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

סוגי מדדים

סוג המדד מתאר את המדידות שאפשר לאסוף ממשאב במעקב. סוג המדד כולל תיאור של מה שנמדד ואיך לפרש את המדידות. ב-Cloud Monitoring יש תמיכה בכ-6,500 סוגי מדדים, ואפשר להגדיר סוגים חדשים.

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

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

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

סוג מדד לדוגמה

בתמונה הבאה מוצגת רשומה של סוג מדד ב-Cloud Storage:

קטע מרשימת המדדים של Cloud Storage.

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

הרשומה לדוגמה בטבלה של Cloud Storage מספקת את המידע הבא על סוג מדד אחד:

  • סוג המדד: מזהה של סוג המדד, storage.googleapis.com/api/request_count בדוגמה.

    התחילית storage.googleapis.com פועלת כמרחב שמות ל-Cloud Storage. כל סוגי המדדים שמשויכים לסוג מסוים של משאב במעקב משתמשים באותו מרחב שמות.

    מרחבי השמות מושמטים מהרשומות בטבלאות.

    כל סוגי המדדים שמשויכים ל-Cloud Storage מפורטים בטבלה של מדדי Cloud Storage.

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

  • שם לתצוגה: מחרוזת קצרה שמתארת את סוג המדד, בדוגמה הזו "מספר הבקשות".

  • Kind, Type, Unit: השורה הזו מספקת מידע לפירוש ערכי הנתונים. בדוגמה מוצג מדד דלתא שמתועד כמספר שלם של 64 ביט ללא יחידה (זהו הערך 1).

    • Kind: הדוגמה הזו היא מדד delta, שמתעד שינוי לאורך זמן. כלומר, כל נקודת נתונים מתעדת את מספר הקריאות ל-API מאז שנכתבה נקודת הנתונים הקודמת. למידע נוסף על סוגים, ראו סוגי ערכים וסוגי מדדים.

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

    • Unit: למדד הזה לא נדרשת יחידה מפורשת כי הוא מייצג ספירה. הספרה 1 משמשת כדי לציין שלא נדרשת יחידה.

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

  • תיאור: מידע מפורט יותר על מה שמתועד ואיך. הגדירו את הטקסט בכתב נטוי כדי להבדיל אותו מהתוויות.

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

כשניגשים לנתוני המעקב דרך Cloud Monitoring API, צריך לכלול פרויקט ב Google Cloud קריאה ל-API. אתם יכולים לאחזר רק את הנתונים שגלויים לפרויקט Google Cloud הזה. לדוגמה, אם תבקשו את נתוני הפרויקט לסוג המדד storage.googleapis.com/api/request_count, תראו רק את מספר הקריאות ל-API בקטגוריות של Cloud Storage בפרויקט. אם בפרויקט שלכם לא משתמשים בקטגוריות של Cloud Storage, לא יוחזרו נתוני מדדים.

סוגי מדדים מובנים

סוגי המדדים המובְנים מוגדרים על ידי שירותי Google Cloud , כולל Cloud Monitoring. סוגי המדדים האלה מתארים מדידות סטנדרטיות למגוון רחב של תשתיות נפוצות, וכל אחד יכול להשתמש בהם.

ברשימת המדדים מוצגת קבוצה שלמה של סוגי מדדים מובְנים. המדדים שמופיעים בדף External metrics list הם קבוצת משנה מיוחדת של מדדים מובְנים, שמוגדרים על ידי Cloud Monitoring בשיתוף עם פרויקטים בקוד פתוח או ספקים של צד שלישי. בדרך כלל, למדדים האלה יש את הקידומת external.googleapis.com.

מדדים מותאמים אישית

כשאתם מפתחים את האפליקציה, יכול להיות שתרצו למדוד מאפיינים מסוימים שאין להם מדדים מובְנים ב-Cloud Monitoring. באמצעות Cloud Monitoring, אתם יכולים להגדיר סוגי מדדים משלכם או לייבא סוגי מדדים ממקורות חיצוניים. סוגי המדדים האלה נקראים מדדים בהתאמה אישית. אם למדד יש את הקידומת custom.googleapis.com או prometheus.googleapis.com, זהו מדד מותאם אישית. המדדים האחרונים מגיעים בדרך כלל מהשירות המנוהל של Google Cloud ל-Prometheus.

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

תוויות

תווית היא צמד מפתח/ערך שאפשר להשתמש בו כדי לספק מידע על ערך נתונים.

תוויות של מדדים ושל משאבים במעקב

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

  • לסוג המדד storage.googleapis.com/api/request_count של Cloud Storage יש שתי תוויות, response_code ו-method.
  • לסוג המשאב במעקב gcs_bucket של Cloud Storage יש שלוש תוויות: project_id,‏ bucket_name ו-location. התוויות מזהות מופעים ספציפיים של סוג המשאב.

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

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

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

תוויות של מטא-נתונים של משאבים

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

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

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

למידע נוסף על סינון, ראו מסנני מעקב.

סדרת נתונים: נתונים ממשאב במעקב

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

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

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

  • סדרה של זוגות (timestamp, value). הערך הוא המדידה, וחותמת הזמן היא הזמן שבו בוצעה המדידה.

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

סדרת זמן נוצרת לכל שילוב של תוויות מדדים ומשאבים שמייצר נתונים.

דוגמה מסוגננת: לסוג המדד storage.googleapis.com/api/request_count יכולות להיות סדרות זמן רבות לקטגוריות של Cloud Storage בפרויקט. בטבלה הבאה מוצגות כמה סדרות זמן אפשריות.

בטבלה, הערך bucket: xyz מייצג את הערך של התווית bucket_name בסוג המשאב במעקב, ו-response_code ו-method הן תוויות בסוג המדד. יש סדרת נתונים אחת לכל שילוב של ערכים בתוויות המשאבים והמדדים. בטבלה מוצגים חלק מהם:

תווית של משאב
במעקב
תוויות של מדדים נתוני המדדים
bucket: 1234 response_code: OK,
method: read
{
(3, Wed 2:00pm),
(2, Wed 2:05pm),
(8, Wed 2:10pm),
...}
bucket: 1234 response_code: OK,
method: write
{
(1, Wed 2:01pm),
(2, Wed 2:04pm),
(7, Wed 2:09pm),
...}
bucket: 1234 response_code: FAIL,
method: write
{
(1, Wed 2:01pm),
(0, Wed 2:04pm),
(0, Wed 2:09pm),
...}
bucket: 9876 response_code: OK,
method: read
{
(2, Wed 1:59pm),
(4, Wed 2:05pm),
(3, Wed 2:10pm),
...}

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

סוגי המדדים לא מציינים אילו סוגים של משאבים במעקב נמצאים בסדרת הזמן של המדדים. ל-Cloud Storage יש רק סוג אחד של משאב במעקב – gcs_bucket. סוגים מסוימים של מדדים משויכים ליותר ממשאב אחד במעקב.

דוגמה בזמן אמת: אם יש לכם פרויקט ב- Google Cloud , אתם יכולים לנסות את הווידג'ט של APIs Explorer, שנמצא בדף העזר של ה-method‏ timeSeries.list ב-Monitoring API.

  1. פותחים את דף העזר של timeSeries.list.

  2. בחלונית Try this method, מזינים את הפרטים הבאים:

    • name: projects/PROJECT_ID. מחליפים את PROJECT_ID במזהה הפרויקט ב- Google Cloud .
    • filter: metric.type="logging.googleapis.com/log_entry_count" resource.type="gce_instance"
    • ‫interval.start_time: מזינים את שעת ההתחלה ומוודאים שהיא מוקדמת ב-20 דקות משעת הסיום.
    • ‫interval.end_time: מזינים את שעת הסיום.

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

{
  "timeSeries": [
    {
      "metric": {
        "labels": {
          "severity": "INFO",
          "log": "compute.googleapis.com/activity_log"
        },
        "type": "logging.googleapis.com/log_entry_count"
      },
      "resource": {
        "type": "gce_instance",
        "labels": {
          "instance_id": "0",
          "zone": "us-central1",
          "project_id": "your-project-id"
        }
      },
      "metricKind": "DELTA",
      "valueType": "INT64",
      "points": [
        {
        "interval": {
            "startTime": "2024-03-29T13:53:00Z",
            "endTime": "2024-03-29T13:54:00Z"
          },
          "value": {
            "int64Value": "0"
          }
        },
        ...
      ]
    },
    ...
  ]
}

למידע נוסף על השימוש בווידג'ט APIs Explorer, כולל פתרון בעיות, ראו APIs Explorer.

עוצמה (cardinality): סדרות זמנים ותוויות

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

מדד, משאב ועוצמה כוללת

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

  • אם יש רק שלושה צבעים אפשריים, "אדום", "ירוק" ו"כחול", אז לתווית color יכולים להיות עד שלושה ערכים נפרדים.
  • אם יש רק שני אזורים אפשריים, "מזרח" ו"מערב", לתווית zone יכולים להיות עד שני ערכים נפרדים.

העוצמה של המדד הזה היא 6 (3×2). אם יש 1,000 ערכים אפשריים לתווית color, וכל צבע יכול להופיע בכל אזור, אז עוצמת המדד היא 2,000 (1,000×2). אותו חישוב חל אם אלה תוויות של סוג משאב במעקב ולא של סוג מדד.

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

הקרדינליות תלויה בערכים שיכולים להיות לתוויות.

כשנתונים של סדרות זמנים נכתבים, הם מסווגים לפי סוגי המדדים והמשאבים במעקב. בכל זוג של סוג מדד וסוג משאב, העוצמה הכוללת היא המכפלה של עוצמת המדד ועוצמת המשאב. אם יש לכם מדד עם עוצמה של 1,000 ומשאב עם עוצמה של 100, ואם כל ערך של תווית מופיע, יש לכם 100,000 סדרות זמנים (1,000×100).

כשאתם יוצרים מדדים משלכם, ודאו שקבוצת הערכים האפשריים לכל תווית מוגבלת. הגישה המועדפת היא קבוצה קטנה של ערכים נפרדים (כמו "אדום", "ירוק" ו"כחול"). לדוגמה, אם משתמשים בערכי RGB של 8 ביט לתווית color, אפשר לקבל יותר מ-16 מיליון ערכים שונים. אל תשתמשו בערכים ברזולוציה גבוהה כמו חותמות זמן, מזהים ייחודיים מכל סוג, מזהי משתמשים, כתובות IP, כתובות URL ללא פרמטרים וכו' בתור תוויות של מדדים.

ביצועי השאילתה וקרדינליות

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

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

אתם יכולים להשתמש בדף Metrics Management ב-Cloud Monitoring כדי לזהות מדדים שיש בהם בעיות של עוצמה. כדי להציג את הדף Metrics Management:

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

    עוברים אל ניהול מדדים.

    אם אתם משתמשים בשורת החיפוש כדי למצוא את הדף הזה, בחרו בתוצאה שכותרת המשנה שלה היא Monitoring.

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

למידע נוסף על הדף Metrics Management, קראו את המאמר הצגה וניהול של השימוש במדדים.

לרקע טכני על האופן שבו Cloud Monitoring מאחסן ושולף נתונים של סדרות זמנים, קראו את המאמר Monarch: Google's Planet-Scale In-Memory Time Series Database.

מידע על מגבלות של מדדים שמוגדרים על ידי המשתמשים ב-Cloud Monitoring מופיע במאמר מדדים שמוגדרים על ידי המשתמשים.