本頁面說明如何監控 Cloud Firestore 用量,並找出應用程式中的潛在問題。
用量資訊主頁
您可以使用 Google Cloud 控制台和 Firebase 控制台的用量資訊主頁,查看文件的讀取、寫入和刪除作業數量隨時間變化。
存取權控管
使用率資訊主頁需要 monitoring.timeSeries.list
Cloud IAM 權限。專案擁有者、編輯者和檢視者角色會授予這項權限。您也可以透過 Cloud Monitoring 角色或自訂角色授予此權限。
資料庫用量資訊主頁
如要查看 Cloud Firestore 資料庫的用量指標,請在 Google Cloud 控制台中開啟資料庫的「用量」頁面。
前往 Google Cloud 控制台的「Databases」頁面。
從資料庫清單中選取所需資料庫。
在導覽選單中,按一下「用量」。
按一下頁面上顯示的訊息中的連結,即可查看資料庫用量。
Google Cloud 控制台的 Cloud Firestore 資料庫用量資訊主頁。"/>
使用情況匯總資訊主頁
如果專案有多個 Cloud Firestore 資料庫,您可以在 Google Cloud 控制台或 Firebase 控制台中查看匯總的用量指標。
Google Cloud 控制台
前往 Google Cloud 控制台的「Project usage」頁面。
專案使用量資訊主頁會顯示文件作業的時間變化情形,如下所示:
Google Cloud 控制台的 Cloud Firestore 專案用量資訊主頁。"/>
Firebase 主控台
前往Cloud Firestore使用情形頁面 (Firebase 控制台)
Firebase 控制台中的 Cloud Firestore 用量資訊主頁。"/>
使用情形資訊主頁和帳單報表
Firebase 和 Cloud 控制台中的 Cloud Firestore 用量資訊主頁會提供預估用量,方便您找出用量尖峰。不過,資訊主頁並非呈現確切的計費作業資料。計費用量可能會更高。因此,如有資料不一致的情況,帳單報表的參考順序一律高於用量資訊主頁。
會導致用量資訊主頁與計費用量資料不一致的作業包括:
- 匯入和匯出作業。這些作業執行的讀取和寫入作業不會顯示在用量資訊主頁中。
- 免人工管理的純驗證寫入作業。僅驗證文件是否存在的寫入作業會計入讀取操作,但在寫入用量資訊主頁中分別顯示為 `UPDATE_NOOP` 和 `DELETE_NOOP`。
- 無操作寫入。不會導致資料庫變更的作業 (例如不會變更欄位值的更新作業,或是寫入已刪除的文件) 可能會在使用率資訊主頁中顯示為 `UPDATE_NOOP` 或 `DELETE_NOOP`。即使顯示為 `NOOP`,這些作業仍會計入帳單作業。
收合寫入。如果同一份文件在短時間內多次寫入,使用率資訊主頁可能會將多筆寫入作業合併,並計為一筆。在計費用量時,系統仍會分別計算每項寫入作業。
使用率資訊主頁也會將欄位轉換作業 (例如伺服器時間戳記、數字遞增和陣列聯集運算) 的寫入作業摺疊起來。就欄位轉換而言,使用率資訊主頁可能會將多項作業計為單一作業。
- 傳回零筆結果的查詢。查詢沒有任何結果時,會產生一次讀取作業的費用。系統會針對這項用量收費,但不會顯示在用量資訊主頁中。
- 來自索引項目讀取的讀取作業。系統會針對這項用量收費,但不會顯示在用量資訊主頁中。舉例來說,匯總查詢會針對索引項目讀取作業收費,但這項用量不會顯示在用量資訊主頁中。
刪除作業的用量資訊主頁不會擷取存留時間 (TTL) 政策執行的自動到期作業。請參閱 Cloud Monitoring 的 TTL 指標。
安全性規則用途
此外,Firebase 控制台還提供安全性規則評估資訊主頁,讓您一目瞭然地查看規則叫用情形。您可以透過 Cloud Monitoring 中的詳細分析,補充這個資訊主頁。
Firebase控制台中的 Cloud Firestore 規則監控資訊主頁。"/>
Cloud Monitoring 項指標
Cloud Monitoring 會收集 Google Cloud 產品的指標、事件和中繼資料。Cloud Firestore 控制台中的用量資訊主頁會回報相同的指標資料。如要設定自訂資訊主頁和用量快訊,請使用 Cloud Monitoring。
Cloud Monitoring 包含下列 Cloud Firestore 指標:
指標名稱 | 說明 |
---|---|
文件讀取次數 |
成功讀取文件的次數。您可以依據讀取類型 (LOOKUP 或 QUERY) 細分這項指標。 這個指標不包含來自代管匯出或大量刪除作業的讀取作業。 |
文件寫入次數 |
成功寫入文件的次數。您可以依照寫入類型 (CREATE 或 UPDATE) 細分指標。 這項指標不包含受管理匯入作業的寫入作業。 |
文件刪除次數 | 成功刪除的文件數量。 |
有效連線 |
資料庫的有效連線數。 每個有效的行動和網頁 SDK 都會維護單一連線,可供多個快照監聽器共用。伺服器用戶端程式庫會為每個快照監聽器建立一個連線。 |
快照監聽器 |
所有有效連線的快照監聽器數量。 |
存留時間刪除計數 |
根據存留時間 (TTL) 政策刪除的文件總數。 |
存留時間到期到刪除的延遲時間 |
文件在存留時間 (TTL) 政策下到期,與實際刪除之間的時間間隔。 |
- 即時更新用量
使用有效連線和快照監聽器指標,評估您使用即時更新的頻率。
假設使用者在手機上開啟您的應用程式。接著,應用程式會連線至 Cloud Firestore,並訂閱 10 個查詢。這會讓指標增加 1 個有效連線和 10 個快照監聽器。
- 取樣率
系統每分鐘會取樣 Cloud Firestore 指標,但更新資訊最多可能要 4 分鐘才會顯示在資訊主頁中。
延遲指標
您可以透過常見的 Google Cloud firestore 指標取得後端延遲時間指標。
舉例來說,您可以在 Cloud 控制台的「Metrics Explorer」檢視畫面中,查看 p50 延遲的圖表。
設定 Cloud Monitoring 資訊主頁
如要查看預先定義的資訊主頁或設定資訊主頁,請參閱「使用監控資訊主頁」。