בדף הזה מוסבר איך להשתמש במדדים של Cloud Monitoring כדי לעקוב אחרי מסד הנתונים שלכם ב-Cloud Firestore.
Cloud Monitoring מדדים של Cloud Firestore
בקטעים הבאים מופיע סקירה כללית של המדדים שזמינים עבור Cloud Firestore.
משאבים במעקב
משאב במעקב ב-Cloud Monitoring מייצג ישות לוגית או פיזית, כמו מכונה וירטואלית, מסד נתונים או אפליקציה. משאבים במעקב מכילים קבוצה ייחודית של מדדים שאפשר לבדוק, לדווח עליהם באמצעות מרכז בקרה או להשתמש בהם כדי ליצור התראות. לכל משאב יש גם קבוצה של תוויות משאבים, שהן צמדי מפתח/ערך שמכילים מידע נוסף על המשאב. תוויות משאבים זמינות לכל המדדים שמשויכים למשאב.
הביצועים של Cloud Firestore מנוטרים באמצעות המשאב הבא, באמצעות Cloud Monitoring API:
| מקורות מידע | תיאור |
firestore.googleapis.com/Database | סוג המשאב במעקב שמספק פירוטים לגבי project, location ו-database_id. |
מדדים
רשימה מלאה של מדדים ל-Cloud Firestore זמינה במאמר מדדים של Cloud Firestore. בקטע הבא מפורטים חלק מהמדדים הזמינים.
מדדים של זמן ריצה של שירות
מדדי serviceruntime מספקים סקירה כללית ברמה גבוהה של תעבורת הנתונים בפרויקט. המדדים האלה זמינים ברוב ממשקי ה-API של Google Cloud. סוג המשאב במעקב consumed_api מכיל את המדדים הנפוצים האלה. המדדים האלה נדגמים כל 30 דקות, ולכן הנתונים מוחלקים.
תווית משאב חשובה למדדים של serviceruntime היא 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 מספק ספירה של פעולות קריאה, כתיבה ומחיקה. מדד הכתיבה מספק פירוט בין הפעולות CREATE ו-UPDATE. המדדים האלה תואמים לפעולות CRUD.
אפשר להשתמש במדדים הבאים כדי להבין אם מסד הנתונים שלכם הוא מסד נתונים עם פעולות קריאה רבות או עם פעולות כתיבה רבות, ואת קצב המסמכים החדשים לעומת המסמכים שנמחקו.
-
document/delete_ops_count: מספר המסמכים שנמחקו בהצלחה. -
document/read_ops_count: מספר הקריאות המוצלחות של מסמכים משאילתות או מבדיקות. -
document/write_ops_count: מספר הכתיבות המוצלחות של מסמכים.
מדדי חיוב
אפשר להשתמש במדדים האלה כדי להבין את השימוש לצורכי חיוב. המדדים האלה לא כוללים חיובים על פעולות של אדמינים (אינדוקס, ייבוא, ייצוא ומחיקה בכמות גדולה).
-
api/billable_read_units: מספר יחידות הקריאה שניתנות לחיוב. אפשר לפרט את השימוש לפי שם השירות ושיטת ה-API. -
api/billable_realtime_read_units: מספר היחידות של עדכונים בזמן אמת שניתנים לחיוב מתוך עדכונים בזמן אמת. ההגדרה הזו רלוונטית רק ל-Cloud Firestore במצב Native. -
api/billable_write_units: מספר יחידות הכתיבה שניתנות לחיוב. אפשר לפרט את השימוש לפי שם השירות ושיטת ה-API. -
document/billable_managed_delete_write_units: מספר יחידות הכתיבה שניתנות לחיוב משירותי מחיקה מנוהלים כמו TTL.
מדדי אינדקס
אפשר להשוות בין שיעורי הכתיבה של האינדקס לבין document/write_ops_count המדד כדי להבין את התרחבות האינדקס.
-
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 כדי לראות את פעולות הקריאה, הכתיבה והמחיקה של מסמכים לאורך זמן.
בקרת גישה
כדי להשתמש בלוחות הבקרה של השימוש, צריך הרשאה לניהול זהויות והרשאות גישה (IAM) monitoring.timeSeries.list.
התפקידים 'Project Owner', 'עריכה בפרויקט' ו'צפייה בפרויקט' מעניקים את ההרשאה הזו. אפשר גם להעניק את ההרשאה הזו באמצעות תפקיד Cloud Monitoring או תפקיד בהתאמה אישית.
לוח הבקרה Database usage
כדי לראות את מדדי השימוש של מסד נתונים Cloud Firestore:
נכנסים לדף Databases במסוף Google Cloud.
בוחרים את מסד הנתונים הרצוי מתוך רשימת מסדי הנתונים.
בתפריט הניווט, לוחצים על Usage (שימוש).
לוח הבקרה של השימוש ודוחות החיוב
מרכזי הבקרה של השימוש במסוף Cloud Firestore מספקים אומדן של השימוש. הם יכולים לעזור לכם לזהות עליות חדות בשימוש. עם זאת, לוח הבקרה לא מציג תמונה מדויקת של הפעולות שחויבו. השימוש שחויב עליו כנראה גבוה יותר. כדי לעקוב אחרי החיוב, אפשר לעיין במאמר בנושא מדדי חיוב.
בכל המקרים של אי התאמה, הדוח לחיוב קודם ללוח הבקרה של השימוש.
פעולות ייבוא וייצוא גורמות לחוסר התאמה בין מרכז הבקרה של השימוש לבין השימוש שמחויב. פעולות קריאה וכתיבה שמתבצעות על ידי הפעולות האלה לא מופיעות במרכז הבקרה של השימוש.
צפייה במדדי הביצועים של מסד הנתונים
הדף Monitoring בקטע Cloud Firestore במסוף Google Cloud כולל לוחות בקרה מוגדרים מראש למעקב, כמו Request Latencies (P50 and P99), Response Codes ו-Query stats (P50). אפשר גם ליצור עד מרכז בקרה אחד בהתאמה אישית. כדי להיכנס לדף Monitoring של מסד נתונים:
במסוף Google Cloud, פותחים את הדף Cloud Firestore Databases.
בוחרים מסד נתונים מהרשימה.
בתפריט הניווט, לוחצים על Monitoring (מעקב) כדי לפתוח לוח בקרה.
יצירת מרכזי בקרה מותאמים אישית Cloud Monitoring
ב-Cloud Monitoring, מרכזי בקרה מותאמים אישית מאפשרים לכם להציג מידע שרלוונטי לכם בצורה מאורגנת. לדוגמה, אפשר ליצור לוח בקרה להצגת מדדי הביצועים ומדיניות ההתראות של הפרויקט בסביבת הייצור.
מידע נוסף על הגדרת מרכז בקרה מותאם אישית זמין במאמרים ניהול מרכז בקרה מותאם אישית והוספת ווידג'טים למרכז הבקרה.
יצירת מדיניות התראות
ב-Cloud Monitoring, אפשר ליצור התראות כדי לקבל הודעה כשמתרחש שינוי בתנאי של מדד. אתם יכולים להשתמש בהתראות האלה כדי לקבל הודעה על בעיות פוטנציאליות לפני שהן משפיעות על המשתמשים.
מידע נוסף על יצירת התראות זמין במאמר יצירת כללי מדיניות להתראות על סף מדדים.
ניקח כדוגמה את המקרה הבא שבו אנחנו יוצרים מדיניות התראות על זמן האחזור. מדיניות ההתראות בודקת את זמן האחזור של אחוזון 99 בחלון נע של 5 דקות. אם זמן האחזור של אחוזון 99 נשאר גבוה מ-250 אלפיות השנייה במשך 5 דקות, ההתראה מופעלת.
המסוף
במסוף Google Cloud, נכנסים לדף Monitoring ובוחרים באפשרות notifications Alerting.
לוחצים על יצירת מדיניות.
בוחרים את המדד Request Latencies (זמני השהיה של הבקשות) מהמשאב Consumed API (API שנצרך).
מוסיפים מסנן שירות ל-
firestore.googleapis.comעבור מסדי נתונים של Firestore במצב Native.לוחצים על הבא כדי להגדיר את הטריגר.
בוחרים באפשרות Condition Types בתור Threshold.
תנאי הסף מוגדר לערך סף של 250 אלפיות השנייה. התראה מופעלת אם ערך השהייה p99 נשאר זהה למשך כל התקופה של חלון הזמן הנע (5 דקות).
מגדירים את ערך הסף כ-250.
לוחצים על הבא כדי להגדיר את ההתראות.
מגדירים את השם של מדיניות ההתראות ולוחצים על הבא.
בודקים את הגדרות ההתראה ולוחצים על 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'