使用 Cloud Monitoring 監控資料庫

本頁說明如何使用與 MongoDB 相容的 Firestore 適用的 Cloud Monitoring 指標,監控資料庫。

與 MongoDB 相容的 Firestore 的 Cloud Monitoring 指標

以下各節將概述與 MongoDB 相容的 Firestore 可用的指標。

受監控資源

Cloud Monitoring 中的受監控資源代表邏輯或實體實體,例如虛擬機器、資料庫或應用程式。受監控的資源包含一組獨特的指標,可用於探索、透過資訊主頁回報,或用於建立快訊。每項資源也有一組資源標籤,這些鍵/值組合會保存資源的其他資訊。資源標籤適用於與資源相關聯的所有指標。

使用 Cloud Monitoring API 時,可透過下列資源監控與 MongoDB 相容的 Firestore 效能:

資源 說明
firestore.googleapis.com/Database 受控資源類型,可提供 projectlocationdatabase_id 的詳細資料。

指標

如需 Firestore 指標的完整清單,請參閱「Firestore 指標」。以下章節說明部分可用指標。

服務執行階段指標

serviceruntime指標提供專案流量的概略總覽。這些指標適用於大多數 Google Cloud API。consumed_api 受監控的資源類型包含這些常見指標。這些指標每 30 分鐘取樣一次,因此資料會經過平滑處理。

serviceruntime 指標的重要資源標籤是 method。這個標籤代表呼叫的基礎遠端程序呼叫 (RPC) 方法。您呼叫的 SDK 方法名稱不一定與基礎 RPC 方法相同。這是因為 SDK 提供高階 API 抽象層級。不過,如要瞭解應用程式與 Firestore 的互動方式,請務必根據 RPC 方法名稱瞭解指標。

如要瞭解特定 SDK 方法的基礎 RPC 方法,請參閱 API 說明文件

api/request_latencies

api/request_latencies 指標會提供所有已完成要求的延遲時間分布情形。

Firestore 會記錄 Firestore 服務元件的指標。延遲時間指標包括 Firestore 收到要求到完成傳送回應的時間,包括與儲存層的互動。因此,這些指標不包含用戶端與 Firestore 服務之間的往返延遲時間 (rtt)。

文件作業指標

Firestore 會提供讀取、寫入和刪除次數。寫入指標會細分「CREATE」和「UPDATE」作業。這些指標與 CRUD 作業一致。

您可以使用下列指標,瞭解資料庫是讀取密集型還是寫入密集型,以及新文件與已刪除文件的比率。

  • document/delete_ops_count:成功刪除的文件數量。
  • document/read_ops_count:從查詢或搜尋成功讀取文件的次數。
  • document/write_ops_count:成功寫入文件的次數。

帳單指標

您可以透過這些指標瞭解帳單用量。這些指標不含管理員作業 (建立索引、匯入、匯出及大量刪除) 的帳單。

  • api/billable_read_units:可計費讀取單位數量。 用量可依服務名稱和 API 方法細分。

  • api/billable_write_units:可計費寫入單位數量。 用量可依服務名稱和 API 方法細分。

  • document/billable_managed_delete_write_units:來自代管刪除服務 (例如 TTL) 的可計費寫入單位數量。

索引指標

您可以將索引寫入率與 document/write_ops_count 指標進行比較,瞭解索引扇出。

  • index/write_count:索引寫入次數。

存留時間指標

與 MongoDB 相容的 Firestore 存留時間指標可用於監控強制執行的 TTL 政策效果。

  • document/ttl_deletion_count:由 TTL 服務刪除的文件總數。
  • document/ttl_expiration_to_deletion_delays:文件 TTL 過期到實際刪除之間經過的時間。

查看預先定義的資訊主頁,以及建立自訂資訊主頁

與 MongoDB 相容的 Firestore 支援使用 Cloud Monitoring 指標的預先定義資訊主頁。您也可以建立自訂資訊主頁。

查看資料庫用量指標

在 Google Cloud 控制台中開啟使用情形資訊主頁,即可查看特定期間內的文件讀取、寫入和刪除次數。

存取權控管

使用量資訊主頁需要 monitoring.timeSeries.list Identity and Access Management (IAM) 權限。專案擁有者、編輯者和檢視者角色會授予這項權限。您也可以透過 Cloud Monitoring 角色自訂角色授予這項權限。

資料庫用量資訊主頁

如要查看與 MongoDB 相容的 Firestore 資料庫用量指標,請按照下列步驟操作。

  1. 前往 Google Cloud 控制台的「Databases」頁面。

    前往「資料庫」

  2. 從資料庫清單中選取所需資料庫。

  3. 在導覽選單中,按一下「用量」

用量資訊主頁和帳單報表

控制台中的 Firestore 用量資訊主頁會提供預估用量,方便您找出用量尖峰。 不過,資訊主頁並非呈現確切的計費作業資料。因此實際計費的用量可能會更高。如要監控帳單,請參閱帳單指標

因此,如有資料不一致的情況,帳單報表的參考順序一律高於用量資訊主頁。

匯入和匯出作業會導致用量資訊主頁與計費用量資料不一致。這些作業執行的讀取和寫入作業不會顯示在用量資訊主頁中。

查看資料庫效能指標

在控制台的 Firestore 專區中,「監控」頁面會顯示預先定義的監控資訊主頁,例如「要求延遲時間 (第 50 個和第 99 個百分位數)」、「回應代碼」和「查詢統計資料 (第 50 個百分位數)」。Google Cloud 你也可以建立最多一個自訂資訊主頁。如要存取資料庫的「監控」頁面,請按照下列步驟操作:

  1. 在 Google Cloud 控制台中,開啟 Firestore 的「Databases」(資料庫) 頁面。

    前往「資料庫」

  2. 從清單中選取資料庫。

  3. 在導覽選單中,按一下「Monitoring」(監控) 開啟資訊主頁。

建立自訂 Cloud Monitoring 資訊主頁

在 Cloud Monitoring 中,您可以透過自訂資訊主頁,有條不紊地顯示與您相關的資訊。舉例來說,您可以建立資訊主頁,顯示正式環境中專案的成效指標和快訊政策。

如要進一步瞭解如何設定自訂資訊主頁,請參閱「管理自訂資訊主頁」和「新增資訊主頁小工具」。

建立快訊政策

您可以在 Cloud Monitoring 中建立快訊,在指標條件發生變化時收到通知。您可以使用這些警示,在潛在問題影響使用者前收到通知。

如要進一步瞭解如何建立快訊,請參閱建立指標閾值快訊政策

請參考以下範例,瞭解如何建立延遲快訊政策。快訊政策會檢查 5 分鐘滾動週期內的第 99 百分位延遲時間。如果 p99 延遲時間持續高於 250 毫秒達 5 分鐘,就會觸發快訊。

控制台

  1. 前往 Google Cloud 控制台的「Monitoring」(監控) 頁面,然後選取「Alerting」(快訊)

    前往「Monitoring」頁面

  2. 選取「建立政策」

  3. 從「已使用的 API」資源中選取「要求延遲」指標。

  4. 為 Firestore Native 資料庫新增「firestore.googleapis.com」的服務篩選條件。

  5. 按一下「下一步」來設定觸發條件。

  6. 將「Condition Types」(條件類型) 設為「Threshold」(門檻)

    門檻條件設為 250 毫秒的門檻值。如果第 99 個百分位數的延遲時間值在整個滾動視窗 (5 分鐘) 期間都維持不變,系統就會觸發快訊。

  7. 將「門檻值」設為「250」

  8. 按一下「下一步」設定通知。

  9. 設定快訊政策名稱,然後按一下「下一步」

  10. 檢查快訊設定,然後按一下「建立政策」

MQL

您可以使用 Monitoring Query Language (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'