אחזור נתוני SLO

נתוני SLO מאוחסנים כסדרות זמן. אפשר לאחזר סדרות זמנים של SLO על ידי ציון בורר סדרות זמנים בפרמטר filter של השיטה timeSeries.list, או על ידי שימוש במצב הסינון הישיר ב-Metrics Explorer.

מדיניות התראות שמבוססת על SLO

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

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

שימוש בבורר של סדרת זמן במסנן

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

שמות וארגומנטים

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

SELECTOR_NAME(SLO_NAME)
SELECTOR_NAME(SLO_NAME, LOOKBACK_PERIOD)

לסלקטורים יש שמות שמתחילים ב-select_slo_, והם מקבלים ארגומנט אחד או שניים:

  • הארגומנט הראשון של הסלקטור הוא שם המשאב של יעד ה-SLO, שדומה לזה:

    projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID
    

    הביטוי הקודם מכיל שלושה משתנים:

    • ‫PROJECT_ID: השם או המספר של Google Cloud פרויקט.
    • ‫SERVICE_ID: שם של שירות.
    • SLO_ID: מזהה של יעד למדידת רמת השירות (SLO) שהוגדר לשירות.

    מידע על איתור הערכים של השדות SERVICE_ID ו-SLO_ID עבור הפרויקט Google Cloud מופיע במאמר שימוש ב-API.

  • הארגומנט השני, אם הוא נתמך, הוא תקופת מבט לאחור. מידע על תקופות מבט לאחור מופיע במאמר סוגים של התראות על תקציב שגיאות. יחידות הזמן הקבילות הן 'ns',‏ 'us',‏ 'ms',‏ 's',‏ 'm',‏ 'h'.

לדוגמה, בבורר select_slo_budget יש ארגומנט SLO_NAME, ולכן פילטר שמשתמש בבורר הזה נראה כך:

select_slo_budget("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID")

לעומת זאת, הבורר select_slo_burn_rate דורש את הארגומנטים SLO_NAME ו-LOOKBACK_PERIOD, ולכן פילטר שמשתמש בבורר הזה נראה כך:

select_slo_burn_rate("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID", "3600s")

רשימה ותיאור של כל הבוררים מופיעים במאמר בנושא בוררים של סדרות עיתיות.

אחזור נתונים באמצעות בורר

אחת הדרכים לשלוח שאילתה לגבי נתונים של סדרות זמן היא באמצעות הכלי APIs Explorer בדף ההפניה של השיטה timeSeries.list. מידע על הכלי הזה זמין במאמר APIs Explorer.

לדוגמה, כדי לאחזר מידע על התקציב של SLO, ממלאים את השדות הבאים בכלי APIs Explorer:

  • name: projects/PROJECT_ID
  • ‫filter: select_slo_budget("projects/PROJECT_ID/services/SERVICE_ID/serviceLevelObjectives/SLO_ID")
  • ‫interval.startTime: 2021-10-07T13:00:20-04:00
  • ‫interval.endTime: 2021-10-08T13:00:20-04:00

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

קטע מתוך סדרת הזמן שאוחזרה

בוררים של סדרות זמן

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

select_slo_burn_rate

תחביר: select_slo_burn_rate(SLO_NAME, LOOKBACK_PERIOD)

בורר סדרות הזמן 'שיעור השחיקה' מחזיר את היחס בין שיעור הכישלונות הנוכחי (שיעור הבקשות הלא תקינות במרווח הזמן של החיפוש לאחור) לבין שיעור הכישלונות בר-הקיימא של ה-SLO. שיעור הכשלים בר-קיימא הוא השיעור שבו עומדים בדיוק ביעד ה-SLO.

הערכים בסדרת הזמן הזו יכולים לנוע בין 0 לאינסוף:

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

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

אפשר ליצור ולערוך מדיניות התראות על סמך בורר סדרות הזמן הזה באמצעות ה-API או Google Cloud המסוף.

כל מדיניות ההתראות מבוססת-SLO שנוצרה באמצעות מסוף Google Cloud משתמשת בסלקטור הזה כדי לאחזר את נתוני ה-SLO.

select_slo_health

תחביר: select_slo_health(SLO_NAME)

סדרת הזמן 'מצב תקינות של SLO' עונה על השאלה: 'במהלך תקופת התאמה נתונה, מה היה היחס בין בקשות טובות לבין סך הבקשות?' ה-SLI של השירות מגדיר מה נחשב לבקשה טובה. מידע נוסף על SLI זמין במאמר סקירה כללית.

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

select_slo_compliance

תחביר: select_slo_compliance(SLO_NAME)

סדרת הזמן 'עמידה ביעד SLO' עונה על השאלה: 'מה היחס בין היחידות הטובות לבין היחידות הכוללות מאז תחילת תקופת העמידה ביעד?' יעד ה-SLO מגדיר את תקופת העמידה ביעד כחלון נע או כטווח של זמן קלנדרי. היחידה יכולה להיות בקשה או חלון זמן. מידע נוסף זמין במאמר בנושא תאימות ל-SLO שמבוסס על בקשות וחלונות זמן.

סדרת הזמן הזו נותנת תמונה כללית של מידת ההתאמה של השירות ליעד ה-SLO. הוא לא יוצר אות דחוף מבחינה תפעולית.

אל תשתמשו בבורר סדרת הזמנים הזה במדיניות התראות.

select_slo_budget

תחביר: select_slo_budget(SLO_NAME)

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

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

אל תשתמשו בבורר סדרת הזמנים הזה במדיניות התראות.

select_slo_budget_fraction

תחביר: select_slo_budget_fraction(SLO_NAME)

סדרת הזמן 'שבר תקציב ה-SLO' עונה על השאלה: 'כמה מתקציב השגיאות, כשבר נע בין מינוס אינסוף ל-1, נשאר נכון לעכשיו?'

אל תשתמשו בבורר סדרת הזמנים הזה במדיניות התראות.

select_slo_budget_total

תחביר: select_slo_budget_total(SLO_NAME)

סדרת הזמן 'התקציב הכולל של SLO' עונה על השאלה: 'מהו תקציב השגיאות הכולל (בבקשות או בדקות) שצפוי להיות זמין בשלב הזה, על סמך התנהגות השירות מאז תחילת תקופת התאימות?' ה-SLO מגדיר את תקופת התאימות כחלון נע או כטווח של זמן קלנדרי.

אל תשתמשו בבורר סדרת הזמנים הזה במדיניות התראות.

select_slo_counts

תחביר: select_slo_counts(SLO_NAME)

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

אל תשתמשו בבורר סדרת הזמנים הזה במדיניות התראות.