בדף הזה מוסבר איך להשתמש במדדי Cloud Monitoring של Cloud Firestore כדי לעקוב אחרי מסד הנתונים.
Cloud Monitoring מדדים של Cloud Firestore
בקטעים הבאים מפורטים המדדים שזמינים ל-Cloud Firestore.
משאבים במעקב
משאב במעקב ב-Cloud Monitoring מייצג ישות לוגית או פיזית, כמו מכונה וירטואלית, מסד נתונים או אפליקציה. המשאבים במעקב מכילים קבוצה ייחודית של מדדים שאפשר לחקור, לדווח עליהם באמצעות מרכז בקרה או להשתמש בהם כדי ליצור התראות. לכל משאב יש גם קבוצה של תוויות משאבים, שהן צמדי מפתח/ערך שמכילים מידע נוסף על המשאב. תוויות של משאבים זמינות לכל המדדים שמשויכים למשאב.
באמצעות ה-API של Cloud Monitoring, הביצועים של Cloud Firestore מנוטרים באמצעות המשאב הבא:
| מקורות מידע | תיאור |
firestore.googleapis.com/Database | סוג המשאב במעקב שמספק פירוט של project, location ו-database_id. |
מדדים
לרשימה המלאה של המדדים של Cloud Firestore, ראו מדדי Cloud Firestore. בקטע הבא מתוארים חלק מהמדדים הזמינים.
מדדי זמן ריצה של שירותים
המדדים של serviceruntime מספקים סקירה כללית ברמה גבוהה של התנועה בפרויקט. המדדים האלה זמינים ברוב ממשקי ה-API של Google Cloud. סוג המשאב במעקב consumed_api מכיל את המדדים הנפוצים האלה. המדדים האלה נדגמים כל 30 דקות, ולכן הנתונים מוחלקים.
תווית משאב חשובה למדדי serviceruntime היא method. התווית הזו מייצגת את ה-method הבסיסית של ה-RPC שנקראה. יכול להיות שהשם של ה-method ב-SDK שאתם קוראים לה לא יהיה זהה לשם של ה-method הבסיסית ב-RPC. הסיבה לכך היא שערכת ה-SDK מספקת הפשטה של API ברמה גבוהה. עם זאת, כשמנסים להבין את האינטראקציה של האפליקציה עם Cloud Firestore, חשוב להבין את המדדים על סמך השם של שיטת ה-RPC.
אם אתם צריכים לדעת מהי שיטת ה-RPC הבסיסית של שיטת SDK נתונה, עיינו במסמכי התיעוד של ה-API.
api/request_latencies
המדד api/request_latencies מספק התפלגויות של זמני אחזור בכל הבקשות שהושלמו.
Cloud Firestore מתעד מדדים מהרכיב Cloud Firestore Service. מדדי זמן האחזור כוללים את הזמן שחולף מרגע קבלת הבקשה ב-Cloud Firestore ועד לסיום שליחת התגובה על ידי Cloud Firestore, כולל אינטראקציות עם שכבת האחסון. לכן, זמן האחזור הלוך ושוב (rtt) בין הלקוח לבין שירות Cloud Firestore לא נכלל במדדים האלה.
מדדי פעולות במסמכים
Cloud Firestore מספק ספירות של קריאה, כתיבה ומחיקה. המדד write מספק פירוט של הפעולות CREATE ו-UPDATE. המדדים האלה תואמים לפעולות CRUD.
המדדים הבאים יכולים לעזור לכם להבין אם מסד הנתונים שלכם עמוס בקריאות או בכתיבות, ואת קצב המסמכים החדשים לעומת המסמכים שנמחקו.
-
document/delete_ops_count: מספר המסמכים שנמחקו בהצלחה. -
document/read_ops_count: מספר הפעמים שבהן מסמכים נקראו בהצלחה משאילתות או מחיפושים. -
document/write_ops_count: מספר הכתיבות המוצלחות של מסמכים.
מדדי חיוב
המדדים האלה עוזרים להבין את השימוש בחיוב. המדדים האלה לא כוללים חיובים על פעולות של אדמינים (הוספה לאינדקס, ייבוא, ייצוא ומחיקה בכמות גדולה).
-
api/billable_read_units: מספר יחידות הקריאה שניתן לחייב. אפשר לפרק את השימוש לפי שם השירות וה-method של ה-API. -
api/billable_realtime_read_units: מספר היחידות של עדכונים בזמן אמת שאפשר לחייב עליהן. ההגדרה הזו רלוונטית רק ל-Cloud Firestore במצב מקורי. -
api/billable_write_units: מספר יחידות הכתיבה לחיוב. אפשר לפרק את השימוש לפי שם השירות וה-method של ה-API. -
document/billable_managed_delete_write_units: מספר יחידות הכתיבה שניתן לחייב עליהן משירותי מחיקה מנוהלים כמו TTL.
מדדי אינדקס
אפשר להשוות בין קצבי הכתיבה של האינדקסים לבין המדד document/write_ops_count כדי להבין את ה-fanout של האינדקסים.
-
index/write_count: מספר פעולות הכתיבה באינדקס.
מדדי TTL
המדדים של TTL ל-Cloud Firestore משמשים למעקב אחרי ההשפעה של מדיניות ה-TTL שנאכפת.
-
document/ttl_deletion_count: המספר הכולל של המסמכים שנמחקו על ידי שירותי TTL. -
document/ttl_expiration_to_deletion_delays: הזמן שחלף בין המועד שבו פג התוקף של מסמך עם TTL לבין המועד שבו הוא נמחק בפועל.
איך צופים במרכזי בקרה מוגדרים מראש ויוצרים מרכזי בקרה בהתאמה אישית
ב-Cloud Firestore יש תמיכה במרכזי בקרה מוגדרים מראש שמשתמשים במדדים של Cloud Monitoring. אפשר גם ליצור מרכזי בקרה בהתאמה אישית.
הצגת מדדי השימוש במסד הנתונים
פותחים את לוחות הבקרה של השימוש במסוף Google Cloud כדי לראות את פעולות הקריאה, הכתיבה והמחיקה של מסמכים לאורך זמן.
בקרת גישה
כדי להשתמש במרכזי הבקרה של השימוש, נדרשת הרשאת monitoring.timeSeries.list לניהול זהויות והרשאות גישה (IAM).
התפקידים Project Owner, עריכה וצפייה מעניקים את ההרשאה הזו. אפשר לתת את ההרשאה הזו גם באמצעות תפקיד Cloud Monitoring או תפקיד בהתאמה אישית.
לוח הבקרה של השימוש במסד הנתונים
כדי לראות את מדדי השימוש של מסד נתונים ב-Cloud Firestore:
נכנסים לדף Databases במסוף Google Cloud.
בוחרים את מסד הנתונים הרצוי מרשימת מסדי הנתונים.
בתפריט הניווט, לוחצים על Usage (שימוש).
לוח הבקרה של השימוש ודוחות החיוב
מרכזי הבקרה של השימוש ב-Cloud Firestore במסוף מספקים הערכה של השימוש. הם יכולים לעזור לכם לזהות עלייה חדה בשימוש. עם זאת, לוח הבקרה לא מציג תמונה מדויקת של הפעולות שחויבו. סביר להניח שהשימוש לחיוב גבוה יותר. כדי לעקוב אחרי החיוב, אפשר לעיין במדדי החיוב.
בכל מקרה של אי-התאמה, דוח החיוב קודם ללוח הבקרה של השימוש.
פעולות ייבוא וייצוא גורמות לפערים בין לוח הבקרה של השימוש לבין השימוש שחויב. פעולות קריאה וכתיבה שבוצעו על ידי הפעולות האלה לא מופיעות בלוח הבקרה של השימוש.
הצגת מדד לבדיקת ביצועים של מסד הנתונים
הדף Monitoring בקטע Cloud Firestore במסוף Google Cloud כולל לוחות בקרה מוגדרים מראש למעקב, כמו Request Latencies (P50 and P99), Response Codes ו-Query stats (P50). אפשר גם ליצור מרכז בקרה אחד בהתאמה אישית. כדי להיכנס לדף Monitoring של מסד נתונים:
פותחים את הדף Cloud Firestore Databases במסוף Google Cloud.
בוחרים מסד נתונים מהרשימה.
בתפריט הניווט, לוחצים על Monitoring כדי לפתוח לוח בקרה.
יצירת מרכזי בקרה בהתאמה אישית ב-Cloud Monitoring
ב-Cloud Monitoring, מרכזי בקרה בהתאמה אישית מאפשרים להציג מידע שרלוונטי לכם בצורה מאורגנת. לדוגמה, אתם יכולים ליצור לוח בקרה כדי להציג את מדדי הביצועים ואת מדיניות ההתראות של הפרויקט בסביבת הייצור.
מידע נוסף על הגדרת לוח בקרה בהתאמה אישית זמין במאמרים ניהול לוח בקרה בהתאמה אישית והוספת ווידג'טים ללוח הבקרה.
יצירת מדיניות התראות
ב-Cloud Monitoring, אתם יכולים ליצור התראות שיודיעו לכם כשמתרחש שינוי בתנאי של מדד. אתם יכולים להשתמש בהתראות האלה כדי לקבל עדכונים על בעיות פוטנציאליות לפני שהן משפיעות על המשתמשים.
מידע נוסף על יצירת התראות זמין במאמר יצירת מדיניות התראות לפי סף של מדד.
בדוגמה הבאה אנחנו יוצרים מדיניות התראה על זמן אחזור. מדיניות ההתראה בודקת את זמן האחזור של p99 בחלון זמן דינמי של 5 דקות. אם זמן האחזור של p99 נשאר גבוה מ-250ms למשך 5 דקות, ההתראה מופעלת.
המסוף
במסוף Google Cloud, נכנסים לדף Monitoring ובוחרים באפשרות notifications Alerting.
לוחצים על יצירת מדיניות.
בוחרים את המדד Request Latencies מהמשאב Consumed API.
מוסיפים מסנן שירות ל-
firestore.googleapis.comלמסדי נתונים של Firestore במצב Native.לוחצים על הבא כדי להגדיר את הטריגר.
בוחרים באפשרות Threshold בשדה Condition Types.
תנאי הסף מוגדר לערך סף של 250 אלפיות השנייה. התראה מופעלת כשערך זמן האחזור של p99 נשאר זהה במשך כל התקופה של חלון הזמן הדינמי (5 דקות).
מגדירים את Threshold value ל-250.
לוחצים על הבא כדי להגדיר התראות.
מגדירים את שם מדיניות ההתראות ולוחצים על Next.
בודקים את הגדרות ההתראה ולוחצים על Create Policy.
MQL
אפשר להטמיע את אותה מדיניות התראות על זמן אחזור באמצעות שאילתה בשפת שאילתת מעקב (MQL). דוגמאות נוספות לשימוש ב-MQL מפורטות במאמר שאילתות MQL לדוגמה.
fetch consumed_api
| metric 'serviceruntime.googleapis.com/api/request_latencies'
| filter (resource.service == 'firestore.googleapis.com')
| group_by 5m,
[value_request_latencies_percentile:
percentile(value.request_latencies, 99)]
| every 5m
| condition val() > 0.25 's'