שאילתות של Prometheus Query Language (PromQL) ב-Cloud Monitoring מאפשרות ליצור מדיניות התראות עם תנאים מורכבים, כמו יחסים בין מדדים, ספים דינמיים שמבוססים על מדד אחר ומדדים משולבים. כללי המדיניות האלה יכולים להעריך נתוני מדדים של עד שנתיים.
אם אתם משתמשים ב-Prometheus בסביבות מחוץ ל- Google Cloud או משתמשים בהתראות בשירות המנוהל של Google Cloud ל-Prometheus, אתם יכולים להעביר את כללי ההתראות של Prometheus למדיניות התראות שמבוססת על PromQL. העברת הכללים מאפשרת לכם לנהל את כל מדיניות ההתראות ב-Monitoring. אפשר גם לייבא לוחות בקרה של Grafana ל-Cloud Monitoring. מידע כללי על השימוש ב-PromQL ועל האופן שבו מדיניות ההתראות מעריכה את הנתונים מופיע במאמרים PromQL ב-Cloud Monitoring והתנהגות של מדיניות התראות מבוססת-מדדים.
שימוש ב-PromQL במדיניות ההתראות של Cloud Monitoring
אפשר ליצור מדיניות התראות שמבוססת על PromQL בדרכים הבאות:
כדי ליצור מדיניות התראות במסוף Google Cloud ולהגדיר שאילתת PromQL בכלי לעריכת קוד, קראו את המאמר יצירת מדיניות התראות מבוססת-PromQL (מסוף).
כדי ליצור מדיניות התראות מבוססת-PromQL באמצעות ה-CLI של gcloud או המבנה
AlertPolicyב-Monitoring API, קראו את המאמר יצירת מדיניות התראות מבוססת-PromQL (API).כדי להעביר את כללי ההתראות וערוצי ההתראות של Prometheus ל-Cloud Monitoring באמצעות Google Cloud CLI, קראו את המאמר העברת כללי התראות ומקלטים מ-Prometheus.
התראות שנוצרו על ידי מדיניות התראות שמבוססת על PromQL מופיעות במסוף Google Cloud יחד עם ההתראות האחרות. אפשר להשתמש בהתראות האלה במסוף Google Cloud .
התנאים של מדיניות ההתראות שמבוססת על PromQL יכולים להפנות לכל מדד ב-Cloud Monitoring, כולל מדדי מערכת של Google Cloud , מדדים מותאמים אישית ומדדים מבוססי-יומנים ומדדי Prometheus. צריך לתרגם את השמות של המדדים שהם לא של Prometheus לתחביר של מדדי PromQL. מיפוי מדדי מעקב ל-PromQL
שאילתות על נתוני מדדים מלפני יותר משנתיים
בניגוד לסוגים אחרים של מדיניות התראות, שבהם אפשר לשלוח שאילתות רק על נתוני מדדים של 25 שעות, ב-PromQL אפשר לשלוח שאילתות על נתוני מדדים של עד שנתיים. האפשרות הזו תומכת בתרחישים לדוגמה כמו:
- זיהוי חריגות על ידי השוואה בין 5 הדקות האחרונות לבין אותה תקופה של 5 דקות לפני שבוע.
- הפעלת מדיניות התראות על קצב ניצול איטי של 7 ימים.
- חישוב הערך הממוצע בחודש האחרון והצגת התראה אם הנתונים בשעה האחרונה חורגים ביותר מ-3 סטיות תקן מהממוצע הזה.
- שימוש בפונקציה
predict_linearעל נתוני השבוע האחרון כדי לבדוק אם תחרגו מהסף ביום הבא.
מדיניות התראה של PromQL שפועלת על נתונים מ-25 השעות האחרונות, כפי שמוגדר על ידי סכום תקופת ההתאמה וכל שינוי זמן שנגרם כתוצאה משימוש במשתנה offset, יכולה לבצע הערכה כל 30 שניות.
מדיניות שפועלת על נתונים ישנים יותר מבצעת הערכה בתדירות נמוכה יותר, כשהתקופה המינימלית נקבעת לפי משך הזמן שמדיניות ההתראות בודקת:
| טווח המבט לאחור של השאילתה | מרווח הזמן המינימלי (ברירת המחדל) להערכה |
|---|---|
| עד 25 שעות1 | 30 שניות |
| 25 שעות עד 8 ימים | 5 דקות |
| 8 עד 16 ימים | שעה אחת |
| 16 עד 32 ימים | שעתיים |
| 32 עד 93 ימים | 6 שעות |
| 93 ימים עד שנתיים | 12 שעות |
1 חלק מהמדדים משירותי Google Cloud תומכים רק במרווחי הערכה של 30 שניות, למשך עד 23 שעות ו-30 דקות.
חשוב לוודא שכל משך זמן של rate יהיה לפחות באורך של מרווח ההערכה, כדי שמדיניות ההתראה לא תחמיץ נתונים. לדוגמה, אם מרווח ההערכה הוא שעה אחת, השאילתה צריכה להיראות כך: rate(metric[1h]).
לתנאים שפועלים על נתונים של יותר מ-25 שעות יש מועד אחרון לשאילתה של 2 דקות, שתואם למועד האחרון ב-Metrics Explorer. אם לא חלף הזמן הקצוב לתפוגה של שאילתת PromQL ב-Metrics Explorer, הוא לא יחלוף גם בהתראה.
מדיניות ההתראות של PromQL הרבה יותר אמינה כשהיא פועלת על נתונים מ-25 השעות האחרונות. כדי להבטיח אמינות מקסימלית, ודאו שסכום חלון הבדיקה החוזרת, תקופת ההתאמה וכל שינוי בזמן שנגרם כתוצאה משימוש במשתנה offset הוא לכל היותר 25 שעות.
חלונות הבדיקה החוזרת מושבתים בשאילתות התראה ב-PromQL שניגשות לנתונים שנוצרו לפני יותר מ-25 שעות.
אפשר להגדיר התראות רק על נתונים מ-25 השעות האחרונות של מדדים מותאמים אישית (הקידומת custom.googleapis.com) ומדדים מבוססי-יומנים שמוגדרים על ידי המשתמש (הקידומת logging.googleapis.com/user/).
הגבלות
אל תוסיפו מסננים שמשתמשים בתוויות של מטא-נתונים של המערכת למדיניות ההתראה שמבוססת על PromQL.
במדיניות התראה שמבוססת על PromQL, חלון הבדיקה החוזרת יכול להיות עד 24 שעות. אם אתם משתמשים בחלון בדיקה חוזרת, הסכום של חלון הבדיקה החוזרת, תקופת ההתאמה וכל שינוי בזמן שנגרם כתוצאה משימוש במשתנה offset חייב להיות לכל היותר 25 שעות.
אם כלל ההתראה של Prometheus מפנה למדד, צריך קודם ליצור תיאור מדד מקביל ב-Cloud Monitoring לפני שיוצרים את מדיניות ההתראה שמבוססת על PromQL. עם זאת, אתם יכולים לשנות את האימות הזה על ידי הגדרת מדיניות ההתראה שמבוססת על PromQL באמצעות Cloud Monitoring API. מידע נוסף זמין במאמר השבתת הבדיקה של קיום המדד.
אם מדיניות ההתראות עוקבת אחרי יחס בין מדדים, צריך להגדיר את משך הזמן לפחות לפי שניים ממרווח ההערכה. משכי זמן קצרים יותר עלולים לגרום להתראות שווא. מידע נוסף מופיע במאמר התראות שווא בגלל אנומליות בחישוב היחס.