אתם יכולים להשתמש במסוף Google Cloud או ב-Cloud Monitoring API כדי לעקוב אחרי Pub/Sub.
במאמר הזה מוסבר איך לעקוב אחרי השימוש ב-Pub/Sub במסוף Google Cloud באמצעות Monitoring.
אם רוצים לראות מדדים ממשאבים אחרים Google Cloud בנוסף למדדים של Pub/Sub, צריך להשתמש ב-Monitoring.
אחרת, אפשר להשתמש בלוחות הבקרה של המעקב שזמינים ב-Pub/Sub. מעקב אחרי נושאים ומעקב אחרי מינויים
שיטות מומלצות לשימוש במדדים של Pub/Sub כאות לשינוי גודל
לפני שמתחילים
לפני שמשתמשים בכלי המעקב, חשוב לוודא שביצעתם את הפעולות הבאות:
חשבון לחיוב ב-Cloud
פרויקט Pub/Sub עם חיוב מופעל
אחת הדרכים לוודא שקיבלתם את שניהם היא להשלים את המדריך למתחילים לשימוש במסוף Cloud.
צפייה במרכז בקרה קיים
מרכז שליטה מאפשר לכם להציג ולנתח נתונים ממקורות שונים באותו הקשר. Google Cloud מספק לוחות בקרה מוגדרים מראש ולוחות בקרה בהתאמה אישית. לדוגמה, אפשר להציג לוח בקרה מוגדר מראש של Pub/Sub או ליצור לוח בקרה בהתאמה אישית שמציג נתוני מדדים, מדיניות התראות ורשומות ביומן שקשורות ל-Pub/Sub.
כדי לעקוב אחרי פרויקט Pub/Sub באמצעות Cloud Monitoring, מבצעים את השלבים הבאים:
נכנסים לדף Monitoring במסוף Google Cloud .
אם שם הפרויקט לא נבחר אוטומטית, בוחרים אותו בחלק העליון של הדף.
בתפריט הניווט, לוחצים על לוחות בקרה.
בדף Dashboards overview, יוצרים מרכז בקרה חדש או בוחרים את מרכז הבקרה הקיים Pub/Sub.
כדי לחפש את מרכז הבקרה הקיים של Pub/Sub, במסנן All Dashboards, בוחרים במאפיין Name ומזינים
Pub/Sub.
מידע נוסף על יצירה, עריכה וניהול של לוחות בקרה בהתאמה אישית זמין במאמר ניהול לוחות בקרה בהתאמה אישית.
הצגת מדד Pub/Sub יחיד
כדי לראות מדד Pub/Sub יחיד באמצעות מסוף Google Cloud , מבצעים את השלבים הבאים:
נכנסים לדף Monitoring במסוף Google Cloud .
בחלונית הניווט, בוחרים באפשרות מרכז המדדים.
בקטע הגדרה, לוחצים על בחירת מדד.
במסנן, מזינים
Pub/Sub.בקטע Active resources, בוחרים באפשרות Pub/Sub Subscription או באפשרות Pub/Sub Topic.
מצמצמים את התצוגה למדד מסוים ולוחצים על החלה.
ייפתח הדף של מדד מסוים.
מידע נוסף על לוח הבקרה של המעקב זמין במאמר בנושא Cloud Monitoring.
צפייה במדדים ובסוגי משאבים של Pub/Sub
כדי לראות אילו מדדים Pub/Sub מדווח ל-Cloud Monitoring, אפשר לעיין ברשימת המדדים של Pub/Sub במסמכי Cloud Monitoring.
לפרטים על סוגי המשאבים במעקב
pubsub_topic,pubsub_subscriptionאוpubsub_snapshot, אפשר לעיין במאמר סוגי המשאבים במעקב במאמרי העזרה של Cloud Monitoring.
גישה לעורך PromQL
Metrics Explorer הוא ממשק ב-Cloud Monitoring שנועד לניתוח ולהצגה חזותית של נתוני המדדים. בMetrics Explorer, אפשר להשתמש בשפת השאילתות של Prometheus (PromQL) כדי לשלוח שאילתות על מדדי Pub/Sub ולנתח אותם.
כדי לגשת לעורך הקוד ולשאול שאילתות על מדדי Cloud Monitoring באמצעות PromQL ב-Metrics Explorer, אפשר לעיין במאמר בנושא שימוש בעורך הקוד ל-PromQL.
לדוגמה, אפשר להזין שאילתת PromQL כדי לעקוב אחרי מספר ההודעות שנשלחו למינוי ספציפי במהלך תקופה של שעה אחת:
sum(
increase({
"__name__"="pubsub.googleapis.com/subscription/sent_message_count",
"monitored_resource"="pubsub_subscription",
"project_id"="your-project-id",
"subscription_id"="your-subscription-id"
}[1h])
)
מעקב אחרי השימוש במכסה
בלוח הבקרה של מכסות IAM ואדמין אפשר לראות את המכסות והשימוש הנוכחיים בפרויקט מסוים.
אפשר לראות את נפח האחסון שנוצל מתוך המכסה שלכם בעבר באמצעות המדדים הבאים:
המדדים האלה משתמשים בסוג המשאב המפוקח consumer_quota. מדדים נוספים שקשורים למכסות זמינים ברשימת המדדים.
לדוגמה, השאילתה הבאה ב-PromQL יוצרת תרשים עם החלק היחסי של מכסת המפרסם שנעשה בה שימוש בכל אזור:
sum by (quota_metric, location) (
rate({
"__name__"="serviceruntime.googleapis.com/quota/rate/net_usage",
"monitored_resource"="consumer_quota",
"service"="pubsub.googleapis.com",
"quota_metric"="pubsub.googleapis.com/regionalpublisher"
}[${__interval}])
)
/
(max by (quota_metric, location) (
max_over_time({
"__name__"="serviceruntime.googleapis.com/quota/limit",
"monitored_resource"="consumer_quota",
"service"="pubsub.googleapis.com",
"quota_metric"="pubsub.googleapis.com/regionalpublisher"
}[${__interval}])
) / 60 )
אם אתם צופים שתחרגו ממכסות ברירת המחדל, כדאי ליצור מדיניות התראות לכל המכסות הרלוונטיות. ההתראות האלה מופעלות כשהשימוש מגיע לחלק מסוים מהמגבלה. לדוגמה, שאילתת PromQL הבאה מפעילה מדיניות התראות כשמכסת השימוש של Pub/Sub חורגת מ-80%:
sum by (quota_metric, location) (
increase({
"__name__"="serviceruntime.googleapis.com/quota/rate/net_usage",
"monitored_resource"="consumer_quota",
"service"="pubsub.googleapis.com"
}[1m])
)
/
max by (quota_metric, location) (
max_over_time({
"__name__"="serviceruntime.googleapis.com/quota/limit",
"monitored_resource"="consumer_quota",
"service"="pubsub.googleapis.com"
}[1m])
)
> 0.8
במאמר שימוש במדדי מכסות מוסבר איך להתאים אישית את המעקב אחרי מדדי המכסות ואת ההתראות לגביהן.
מידע נוסף על מכסות זמין במאמר מכסות ומגבלות.
שמירה על מינוי תקין
כדי לשמור על מינוי תקין, אפשר לעקוב אחרי כמה מאפיינים של המינוי באמצעות מדדים שסופקו על ידי Pub/Sub. לדוגמה, אפשר לעקוב אחרי נפח ההודעות שלא אושרו, אחרי תאריכי היעד לאישור ההודעות וכו'. אפשר גם לבדוק אם המינוי שלכם תקין מספיק כדי להשיג חביון נמוך של מסירת הודעות.
בקטעים הבאים מפורטים מדדים ספציפיים.
מעקב אחרי הודעות בהמתנה
כדי לוודא שהמנויים שלכם מתעדכנים בהודעות, כדאי ליצור לוח בקרה. במרכז הבקרה אפשר לראות את המדדים הבאים של העומס בעבודה, במצטבר לפי משאב, לכל המינויים שלכם:
הודעות שלא אושרו (
subscription/num_unacked_messages_by_region) כדי לראות את מספר ההודעות שלא אושרו.הגיל של ההודעה הכי ישנה שלא אושרה (
subscription/oldest_unacked_message_age_by_region) כדי לראות את הגיל של ההודעה הכי ישנה שלא אושרה בפיגור של המינוי.ציון תקינות של זמן האחזור של המסירה (
subscription/delivery_latency_health_score) כדי לבדוק את התקינות הכוללת של המינוי ביחס לזמן האחזור של המסירה. מידע נוסף על המדד הזה זמין בקטע הרלוונטי במסמך הזה.
יוצרים כללי מדיניות להתראות שמופעלים כשהערכים האלה חורגים מהטווח המקובל בהקשר של המערכת. לדוגמה, המספר המוחלט של הודעות שלא אושרו לא בהכרח משמעותי. פיגור של מיליון הודעות יכול להיות מקובל במינוי של מיליון הודעות בשנייה, אבל לא במינוי של הודעה אחת בשנייה.
בעיות נפוצות ב-backlog
| תסמינים | בעיה | פתרונות |
|---|---|---|
השימוש ב-oldest_unacked_message_age_by_region וב-num_unacked_messages_by_region גדל במקביל. |
מנויים שלא עומדים בקצב של נפח ההודעות |
|
אם יש לכם כמות קטנה של הודעות שממתינות לעיבוד, והיא לא משתנה לאורך זמן, אבל מספר ההודעות בoldest_unacked_message_age_by_region גדל בהתמדה, יכול להיות שיש כמה הודעות שלא ניתן לעבד. |
הודעות תקועות |
|
הערך oldest_unacked_message_age_by_region חורג מ
משך השמירה של ההודעות במינוי. |
אובדן נתונים קבוע |
|
מעקב אחרי תקינות זמן האחזור של המסירה
ב-Pub/Sub, זמן האחזור של המסירה הוא משך הזמן שנדרש כדי להעביר הודעה שפורסמה למנוי.
אם יש לכם הרבה הודעות בהמתנה, אתם יכולים להשתמש בציון תקינות של זמן האחזור של המסירה (subscription/delivery_latency_health_score) כדי לבדוק אילו גורמים תורמים לעלייה בזמן האחזור.
המדד הזה מודד את תקינות המינוי הבודד בחלון מתגלגל של 10 דקות. המדד מספק תובנות לגבי הקריטריונים הבאים, שנדרשים כדי שהמינוי ישיג זמן אחזור נמוך באופן עקבי: