מעקב אחרי השימוש
בדף הזה מוסבר איך לעקוב אחרי השימוש ב-Firestore ולזהות בעיות פוטנציאליות באפליקציה.
לוח הבקרה Usage
אפשר להשתמש בלוחות הבקרה של השימוש במסוף Google Cloud ובמסוף Firebase כדי לראות את פעולות הקריאה, הכתיבה והמחיקה של מסמכים לאורך זמן.
בקרת גישה
כדי להשתמש בלוחות הבקרה של השימוש, צריך את הרשאת ה-IAM monitoring.timeSeries.list.
התפקידים 'Project Owner', 'עריכה בפרויקט' ו'צפייה בפרויקט' מעניקים את ההרשאה הזו. אפשר גם להעניק את ההרשאה הזו באמצעות תפקיד ב-Cloud Monitoring או תפקיד בהתאמה אישית.
לוח הבקרה Database usage
כדי לראות את מדדי השימוש במסד נתונים של Firestore, פותחים את הדף Usage (שימוש) במסוף Google Cloud .
נכנסים לדף Databases במסוף Google Cloud .
בוחרים את מסד הנתונים הרצוי מתוך רשימת מסדי הנתונים.
בתפריט הניווט, לוחצים על Usage (שימוש).
לוחצים על הקישור בהודעה שמופיעה בדף כדי לראות את השימוש במסד הנתונים.

לוח הבקרה Aggregated usage
אם בפרויקט יש כמה מסדי נתונים של Firestore, אפשר לראות את מדדי השימוש המצטברים במסוף Google Cloud או במסוף Firebase.
מסוף Google Cloud
נכנסים לדף Project usage במסוף Google Cloud .
מעבר אל Google Cloud השימוש בפרויקט
במרכז הבקרה של השימוש בפרויקט מוצגות פעולות במסמכים לאורך זמן, באופן הבא:

מסוף Firebase
מעבר לדף השימוש ב-Firestore (מסוף Firebase)

לוח הבקרה של השימוש ודוחות החיוב
לוחות הבקרה של השימוש ב-Firestore במסופי Firebase ו-Cloud מספקים הערכה של השימוש. הם יכולים לעזור לכם לזהות עליות חדות בשימוש. עם זאת, לוח הבקרה לא מציג תמונה מדויקת של הפעולות שחויבו. השימוש שחויב עליו כנראה גבוה יותר. בכל המקרים של אי התאמה, הדוח לחיוב קודם ללוח הבקרה של השימוש.
פעולות שגורמות להבדלים בין לוח הבקרה של השימוש לבין השימוש שמחויב כוללות:
- פעולות ייבוא וייצוא. פעולות קריאה וכתיבה שמתבצעות על ידי הפעולות האלה לא מוצגות בלוח הבקרה של השימוש.
- פעולות כתיבה שמאמתות בלבד. פעולות כתיבה שרק מאמתות את קיומו או אי-קיומו של מסמך נכללות בפעולות הקריאה שמחויבות, אבל הן מוצגות כ-
UPDATE_NOOPוDELETE_NOOPבהתאמה בלוח הבקרה של השימוש בפעולות כתיבה. - פעולות כתיבה מסוג no-op. פעולות שלא גורמות לשינוי במסד הנתונים, כמו עדכון שלא משנה את ערכי השדות או כתיבה למסמך שנמחק, עשויות להופיע בלוח הבקרה של השימוש כ-
UPDATE_NOOPאו כ-DELETE_NOOP. למרות שהן מופיעות כ-NOOP, הן עדיין נכללות בפעולות שמחויבות. כתיבה מכווצת. במקרים שבהם מתבצעות כמה פעולות כתיבה לאותו מסמך ברצף מהיר, יכול להיות שבלוח הבקרה לשימוש יצומצמו כמה פעולות כתיבה יחד והן ייספרו כפעולה אחת. כשמחייבים על השימוש, כל פעולת כתיבה נספרת בנפרד.
בנוסף, בלוח הבקרה של השימוש מוצגות פעולות כתיבה מצומצמות של טרנספורמציות של שדות, כמו חותמות זמן של השרת, תוספות מספריות ופעולות איחוד של מערכים. במקרה של טרנספורמציות של שדות, יכול להיות שבדשבורד השימוש ייספרו כמה פעולות כפעולה אחת.
- שאילתות שמחזירות אפס תוצאות. על שאילתות עם אפס תוצאות חל חיוב של פעולת קריאה אחת. השימוש הזה מחויב אבל לא מופיע בלוח הבקרה של השימוש.
- קריאת פעולות מתוך index entries read. השימוש הזה מחויב אבל לא מופיע בלוח הבקרה של השימוש. לדוגמה, בשאילתות צבירה מתבצע חיוב על רשומות אינדקס שנקראות, אבל השימוש הזה לא מופיע בלוח הבקרה של השימוש.
- בקשות להצגת מזהי אוספים. בדשבורד השימוש מדווחת פעולת קריאה אחת לכל מזהה קולקציה, וזה שונה ממה שמופיע בחיוב.
לוח הבקרה של השימוש במחיקות לא כולל פעולות של תפוגה אוטומטית שמתבצעות על ידי מדיניות בנושא זמן חיים (TTL). כדאי לעיין במדדים של זמן החיים מתוך Cloud Monitoring.
שימוש בכללי אבטחה
בנוסף, במסוף Firebase יש לוח בקרה להערכת כללי האבטחה של Firebase, שמאפשר לראות במבט חטוף את הפעלות הכללים. אפשר גם לעקוב אחרי השימוש בכללי האבטחה של Firebase באמצעות Cloud Monitoring. כך אפשר לקבל את אותם מדדים של הערכת כללים, לצד האפשרות ליצור מרכזי בקרה בהתאמה אישית, לנתח מגמות ולהגדיר התראות (למשל, כשמספר הבקשות שנדחות עולה באופן חד). רשימה מלאה של המדדים הזמינים מופיעה במאמר בנושא מדדים ב-Cloud Monitoring.

מדדים של Cloud Monitoring
Cloud Monitoring אוסף מדדים, אירועים ומטא-נתונים מ Google Cloud מוצרים. לוח הבקרה של השימוש במסוף Firestore מציג את אותם נתוני מדדים. כדי להגדיר לוחות בקרה מותאמים אישית והתראות על שימוש, צריך להשתמש ב-Cloud Monitoring.
Cloud Monitoring כולל את מדדי Firestore הבאים:
| שם המדד | תיאור |
|---|---|
| קריאות של מסמכים |
מספר הקריאות המוצלחות של מסמכים. אפשר לפרט את המדד הזה לפי סוג הקריאה: LOOKUP או QUERY. המדד הזה לא כולל קריאות מייצוא מנוהל או ממחיקה גורפת. |
| כתיבה של מסמכים |
מספר הכתיבות המוצלחות של מסמכים. אפשר לפרק את המדד לפי סוג הכתיבה: CREATE או UPDATE. המדד הזה לא כולל פעולות כתיבה מפעולות ייבוא מנוהלות. |
| מחיקות של מסמכים | מספר המסמכים שנמחקו בהצלחה. |
| חיבורים פעילים |
מספר החיבורים הפעילים למסד הנתונים. כל SDK פעיל לנייד ול-web שומר על חיבור יחיד, שאפשר לשתף בין כמה מאזינים של תמונות מצב. ספריות הלקוח של השרת יוצרות חיבור אחד לכל מאזין של תמונת מצב. |
| פונקציות מסוג Snapshot Listener |
מספר המאזינים לתמונת מצב בכל החיבורים הפעילים. |
| מספר הפריטים שנמחקו בגלל זמן החיים |
המספר הכולל של מסמכים שנמחקו על ידי מדיניות אורך החיים (TTL). |
| תפוגת תוקף של זמן החיים (TTL) לעיכובים במחיקה |
הזמן שחלף בין מועד התפוגה של מסמך במסגרת מדיניות אורך החיים (TTL) לבין מועד המחיקה בפועל. |
- שימוש בעדכונים בזמן אמת
אפשר להשתמש במדדים 'חיבורים פעילים' ו'מאזינים לתמונת מצב' כדי למדוד את השימוש בעדכונים בזמן אמת.
נניח שמשתמש פותח את האפליקציה בטלפון שלו. האפליקציה מתחברת ל-Firestore ונרשמת ל-10 שאילתות. כך המדדים שלכם יגדלו בחיבור פעיל אחד וב-10 מאזינים של תמונת מצב.
- תדירות הדגימה
המדדים של Firestore נדגמים כל דקה, אבל יכול להיות שיעברו עד 4 דקות עד שהעדכונים יופיעו במרכזי הבקרה.
מדדי זמן אחזור
מדדי זמן האחזור של ה-Backend זמינים דרך מדדים נפוצים של Google Cloud firestore.
לדוגמה, אפשר למצוא תרשים של חביון p50 בתצוגת Metrics Explorer במסוף Cloud.
הגדרת לוח בקרה של Cloud Monitoring
כדי להציג לוח בקרה מוגדר מראש או להגדיר לוח בקרה, אפשר לעיין במאמר בנושא שימוש בלוח הבקרה של המעקב.