Cloud Monitoring 會針對 API、服務及您使用的 Google Cloud Platform 資源,收集指標。本主題說明設定 Cloud Monitoring 的方式,以及如何運用這項工具監控 API 用量、建立資訊主頁和快訊。
Cloud Monitoring 的功能和選項很多,本主題介紹 Cloud Monitoring 並提供基本範例。如要瞭解所有功能並查看更多範例,請參閱 Cloud Monitoring 說明文件。
設定 Cloud Monitoring
Monitoring 可讓您針對下列項目查看及管理相關指標:
- 單一專案
- 單一機構的多項專案
- 多個機構的多項專案
為確保能看到專案指標,請執行下列操作:
- 在 Google Cloud 控制台中選取「Monitoring」:
- 確認您已選取正確的專案。
- 在「Monitoring」導覽窗格中,按一下「Metrics Scope」(指標範圍) 右側的「>」。以下螢幕截圖為選取 AllEnvironments 專案時顯示的頁面:
「Metrics monitored by this project」(由這項專案監控的指標) 表格列出目前的指標範圍內可存取哪些專案的指標。表格的每一列都會列出專案及其角色:
- 設定專案範圍:這項專案會儲存運作時間檢查、快訊政策、群組及您設定的資訊主頁。指標範圍和範圍設定專案之間是一對一的關係。在這個範例中,AllEnvironments 專案的角色是設定專案範圍。
- 受監控的專案:目前的指標範圍可查看專案指標。在這個範例中,Staging 和 Production 專案的角色均是「受監控的專案」。
「The projects listed below can view this project's metrics」(這項專案的指標可在下列專案中查看) 表格會列出指標範圍包含目前專案的專案。先前的螢幕截圖顯示,沒有任何其他專案能存取 AllEnvironments 專案儲存的指標。
如需詳細資訊 (包括如何新增及移除專案),請參閱「設定 Cloud Monitoring」一節。
探索指標
如要探索指標資料,請使用 Cloud Monitoring 隨附的 Metrics Explorer 來建立圖表。舉例來說,如果您想查看 API 的配額用量,可以使用 Metrics Explorer 來建立最新資料的圖表。
下圖顯示 Maps API 配額用量詳情圖表:
這個範例顯示堆疊長條圖,每個 API 都以長條的其中一段表示。您可以建立各種類型的圖表,例如折線圖、長條圖和熱視圖。您也可以建立單一圖表,顯示最多 10 種指標。
在這張圖片中:
- 圖表左側的「Resource Type」(資源類型) 和「Metric」(指標) 欄位會定義圖表中顯示的指標資料。
- 圖表上方的圖表類型下拉式選單可讓您選取圖表類型。在這個範例中,選取的類型為「Stacked bar chart」(堆疊長條圖)。
- 圖表上方的時間間隔已設為「1W」(一週)。
- 圖表下方會列出用來定義圖表資料的 service、quota_metrics、API method 和指標 value。選取「Add Filter」(新增篩選器),即可根據這些資訊篩選出更精確的資料。
一旦離開 Metrics Explorer 頁面,系統就會捨棄圖表,無須自行刪除不需要的圖表。您也可以將圖表儲存至自訂資訊主頁,甚至是分享給其他人。如要進一步瞭解如何將圖表新增至資訊主頁,請參閱下方的「建立資訊主頁」一節。
繪製單一指標的圖表
如要使用 Metrics Explorer 設定圖表,請執行下列操作:
- 在 Cloud 控制台中選取「Monitoring」:
- 在導覽窗格中,選取「Metrics Explorer」。
- 在工具列的圖表類型下拉式選單中,選取「Stacked bar chart」(堆疊長條圖),指標資料就會以長條圖顯示。
- 選取時間間隔,例如「1W」(一週)。
- 指定要在圖表中顯示的資料。如要使用選單型介面或輸入篩選器,請選取「Configuration」(設定) 分頁標籤。如要使用 Monitoring Query Language (MQL),請選取「MQL」分頁標籤。
- 如要繪製配額用量圖表,請在「Resource type」(資源類型) 中選取「Consumer Quota」(消費者配額)。或者,如要建立 API 用量圖表,請選取「Consumed API」(已使用的 API) 或是「Google Maps API」(請參閱「用量指標」一節,進一步瞭解 Google 地圖平台 API 適用的用量指標)。將滑鼠游標懸停在各資源類型上,即可查看相關說明。
- 在「Metric」(指標) 部分,選取「Rate quota usage」(頻率配額用量)。圖表會自動改為顯示指標資料。 請注意,指標還有其他配額選項。將滑鼠游標懸停在各指標上,即可查看相關說明。如要進一步瞭解 Metrics Explorer 欄位,請參閱「選取指標」和「選擇圖表資料的顯示方式」。
- (選用) 使用下列選項調整顯示方式:
- 新增「篩選器」可指定要顯示的部分資料。如要這麼做,請選取「Add Filter」(新增篩選器) 並完成對話方塊。詳情請參閱「篩選圖表資料」。舉例來說,如要查看單一 API 資料,請按照下列步驟操作:
- 在「Label」(標籤) 欄位中選取「method」(方法)。
- 在「Comparison」(比較) 欄位中選取「= (equals)」(= (等於))。
- 在「Value」(值) 欄位中選取特定方法的名稱。系統會提示您選取資料顯示方式的名稱。
- 選取「Done」(完成) 即可更新圖表。
- 如要將時間序列依標籤分組,請使用「Group by」(分組依據) 欄位。選取這個欄位的值後,「Aggregator」(匯總方式) 欄位也會自動填入值。
- 如要指定合併時間序列的方式,請設定「Aggregator」(匯總方式) 欄位。舉例來說,如果「Group by」(分組依據) 欄位空白,且「Aggregator」(匯總方式) 欄位設為平均值,則圖表會顯示時間序列的平均值。
- 如要設定個別時間序列的處理方式,請選取「Advanced Options」(進階選項)。詳情請參閱「在使用 Metrics Explorer 時選取指標」。
- 新增「篩選器」可指定要顯示的部分資料。如要這麼做,請選取「Add Filter」(新增篩選器) 並完成對話方塊。詳情請參閱「篩選圖表資料」。舉例來說,如要查看單一 API 資料,請按照下列步驟操作:
視需要新增至資訊主頁。
離開「Metrics Explorer」頁面後,圖表也會遭到捨棄。您可以視需要選取「Save Chart」(儲存圖表),將圖表儲存至新的或現有的資訊主頁。如要進一步瞭解如何將圖表新增至資訊主頁,請參閱下方的「建立資訊主頁」一節。
繪製多個指標的圖表
在某些情況下,您可能想要在同一張圖表中顯示多個指標,舉例來說,同時顯示配額用量和配額限制。每張圖表最多只能顯示 10 個指標。
如要在現有圖表中新增指標,請執行下列操作:
- 在現有的圖表中,選取畫面底部的「Add another metric」(新增其他指標)。
- 選取需要的指標並指定時間序列的顯示方式 (做法與您在前面設定原始指標的步驟相同)。
相關資源
如要進一步瞭解如何探索指標,請參閱:
- 使用 Metrics Explorer 建立圖表
- 在使用 Metrics Explorer 時選取指標
- 所有 Google Cloud API 都可使用的指標
- Google 地圖平台 API 的專用指標
- 圖表分布指標
- 畫面顯示設定
建立資訊主頁
您可以透過資訊主頁中一系列的圖表查看及監控時間序列資料。Cloud Monitoring 支援預先定義的資訊主頁和自訂資訊主頁:
- 您使用的 Google Cloud Platform 服務會自動安裝預先定義的資訊主頁。這類的資訊主頁無法設定。
- 自訂資訊主頁是您自行建立的資訊主頁,可讓您定義要查看的資料和呈現方式。舉例來說,您可以顯示指標資料、快訊政策,以及儲存在專案中的記錄。此外,您也可以在圖表、計量表、評量表或表格中,顯示時間序列資料。
如要建立自訂資訊主頁,您可以使用 Cloud 控制台或 Cloud Monitoring API。下圖顯示包含兩張圖表的自訂資訊主頁:
- 左側是配額圖表
- 右側是 API 數量圖表
建立指標圖表,然後將圖表新增至資訊主頁,即可建立自訂資訊主頁。您可以在 Metrics Explorer 中建立圖表,然後加進新的或現有的資訊主頁。或者,也可以建立資訊主頁,然後進行編輯並新增圖表。
如果您選擇使用 Cloud Monitoring API 管理自訂資訊主頁,Metrics Explorer 提供兩種實用公用程式:
- 如要針對您打算加進資訊主頁的圖表產生 JSON 表示法,請使用 Metrics Explorer 設定圖表。接著,您可以透過 Metrics Explorer 工具列的「 More options」(更多選項) 選單項目,找到 JSON 表示法。
- 如要找出與 Cloud Monitoring API 搭配使用的 Monitoring 篩選器語法,請使用 Metrics Explorer 的選單型介面設定圖表。選取指標和篩選器後,請切換至直接篩選器模式,查看對等的 Monitoring 篩選器。
建立自訂資訊主頁
如要建立自訂資訊主頁,請執行下列操作:
- 在 Cloud 控制台中選取「Monitoring」:
- 在導覽窗格中,選取「Dashboards」(資訊主頁)。
- 在「資訊主頁總覽」頁面中,按一下「Create dashboard」(建立資訊主頁)。
- 針對您要加進資訊主頁的每張圖表,執行下列操作:
從「Add chart」(新增圖表) 中選取圖表類型,或是將程式庫中的圖表類型拖曳至圖表區域。
系統會顯示所選類型的預設圖表。以下範例顯示折線圖和其設定窗格:
- 選取「Resource type」(資源類型) 和「Metric」(指標),然後按照建立圖表時的操作方式,套用所有篩選器。
如要進一步瞭解您的選項,請參閱「新增資訊主頁小工具」。
- (選用) 在資訊主頁工具列中,按一下「Add chart」(新增圖表) 新增其他圖表,然後重複以上步驟自訂圖表。
- 編輯完成後,選取向左鍵即可離開資訊主頁,也可以選取任何其他「Monitoring」選單項目。系統會自動儲存資訊主頁。
查看資訊主頁
如要查看資訊主頁,請執行下列操作:
- 在 Cloud 控制台中選取「Monitoring」:
- 在導覽窗格中,選取「Dashboards」(資訊主頁)。
- 從清單中選取自訂資訊主頁或預先定義的資訊主頁。
相關資源
如要進一步瞭解如何建立資訊主頁,請參閱:
用量指標
系統提供兩組指標來監控 Google 地圖平台 API 的用量。一組是 Serviceruntime 指標 (資源類型 consumed_api),大部分 Google Cloud API 都可使用。另一組是 Google 地圖平台指標,這是 Google 地圖平台 API 專用指標 (資源類型 maps.googleapis.com/Api)。
這兩個指標都支援同一組資源標籤,可用於分配 API 使用流量:project_id
、service
、method
、version
、location
和 credential_id
。如需資源標籤說明,請參閱對應指標資源說明文件:
每一組指標都有兩種用來監控用量的指標類型:「要求數」和「要求的延遲時間」。
在「要求數」指標中,您可以按照 protocol
、grpc_status_code
、response_code
和 response_code_class
指標標籤分配使用流量。此外,您也可以按照 Google 地圖平台指標中的 platform_type
進行分配。
在「要求的延遲時間」指標中,您只能按照 Google 地圖平台指標中的 protocol
、platform_type
、response_code
和 response_code_class
指標標籤分配使用流量。
如要進一步瞭解指標類型和標籤,請參閱對應指標群組的說明文件:
回應狀態與回應代碼標籤對應
下表列出「回應 Google 地圖平台 API 要求而傳回的 HTTP 回應代碼與回應狀態碼」與「Cloud Monitoring 中提供的回應代碼標籤」之間的對應關係:HTTP 回應代碼、HTTP 回應代碼類別、GRPC 狀態碼。GRPC 狀態碼是適用於 gRPC 要求的數值 gRPC 回應代碼,也可以是適用於 HTTP 要求的 gRPC 對等代碼。
API 回應中傳回的回應代碼 | 回報給 Monitoring 的回應代碼 | |||
---|---|---|---|---|
Maps API 狀態 | HTTP 回應代碼 | HTTP 回應代碼 | HTTP 回應代碼類別 | GRPC 狀態碼 |
OK | 200、 204、 302 |
200、 204、 302 |
2xx、 3xx |
0 (OK) |
DATA_NOT_AVAILABLE、 NOT_FOUND、 ZERO_RESULTS |
200 | 200、404(1) | 2xx、 4xx(1) |
5 (NOT_FOUND)(1) |
INVALID_REQUEST (參數值無效)、 MAX_ROUTE_LENGTH_EXCEEDED、 MAX_WAYPOINTS_EXCEEDED 等 |
200、 400 |
400 | 4xx | 3 (INVALID_ARGUMENT) |
INVALID_REQUEST (參數無效/遺失、要求剖析錯誤) | 200、 400 |
400 | 4xx | 3 (INVALID_ARGUMENT) |
REQUEST_DENIED | 200、403、 200、400 |
403、 401(1) |
4xx(1) | 7 (PERMISSION_DENIED)、 16 (UNAUTHENTICATED) |
OVER_DAILY_LIMIT、 OVER_QUERY_LIMIT、 RESOURCE_EXHAUSTED、 dailyLimitExceeded、 rateLimitExceeded、 userRateLimitExceeded |
200、 403、 429 |
429(1) | 4xx(1) | 8 (RESOURCE_EXHAUSTED) |
UNKNOWN_ERROR | 200、500、 503 |
500(1)、 503 |
5xx(1) | 2 (UNKNOWN)/13 (INTERNAL)(1)、 14 (UNAVAILABLE) |
1 為了讓回報的錯誤代碼更加一致,Google 地圖平台 API 目前正著手進行遷移:1) 將下列 Maps API 狀態從 HTTP 回應代碼/類別 200 /2xx 改為 404 /4xx (並將 GRPC 狀態碼從 0 (OK ) 改為 5 (NOT_FOUND )):DATA_NOT_AVAILABLE 、NOT_FOUND 、ZERO_RESULTS - 狀態;2) 將下列 Maps API 狀態從 HTTP 回應代碼/類別 200 /2xx 、400 /4xx 改為 403 /4xx (且 GRPC 狀態碼為 7 (PERMISSION_DENIED )):REQUEST_DENIED ;3) 將下列 Maps API 狀態從 HTTP 回應代碼/類別 200 /2xx 、403 /4xx 改為 401 /4xx (且 GRPC 狀態碼為 16 (UNAUTHENTICATED )):REQUEST_DENIED ;4) 將下列 Maps API 狀態從 HTTP 回應代碼/類別 200 /2xx 、403 /4xx 改為 429 /4xx :OVER_QUERY_LIMIT 、dailyLimitExceeded 、rateLimitExceeded 、userRateLimitExceeded ;5) 將下列 Maps API 狀態從 HTTP 回應代碼/類別 200 /2xx 改為 500 /5xx (且 GRPC 狀態碼為 2 (UNKNOWN )、13 (INTERNAL )):UNKNOWN_ERROR 。轉換期間,這兩種回應代碼都會顯示。Maps API 回應中傳回的回應代碼不會變更。您可以在 Metrics Explorer 探索細目,查看特定一段期間內回報的回應代碼。
|
建立快訊
快訊可讓您及時瞭解應用程式中的問題,以便快速解決。在 Cloud Monitoring 中,快訊政策會說明快訊發送時機及通知方式。
快訊政策有繁有簡,可讓您設定單一時間序列是否能使某項條件達成,或者多個時間序列是否必須在符合條件前滿足條件。舉例來說:
- 如果某個 API 的要求數量在 5 分鐘內超過 1,000 個時,請通知我。
- 如有至少 3 個 API 在 HTTP 200 回應的第 90 個百分位數延遲超過 100 毫秒,請通知待命團隊。
下圖顯示的快訊定義是 API 要求在 5 分鐘內超過 20 個時產生通知:
在這張圖片中:
- 這張圖表顯示一段時間內不同 API 的 API 呼叫次數。
- 紅線表示快訊門檻。如果 API 呼叫在 5 分鐘內超過這個門檻,就會觸發快訊。在這個範例中,您會看到有一個 API 超出限制。
當符合快訊政策的條件時,Cloud Monitoring 會開啟事件和問題通知:
- 事件是一種永久記錄,會在符合條件時儲存受控資源的相關資訊。一旦不再符合條件,系統就會自動關閉事件。您可以使用快訊資訊主頁,查看所有未解決和已結案的事件。
- 設定快訊政策時,您需要指定通知對象。 Monitoring 支援常見的通知管道,包括電子郵件、Cloud Mobile App,以及 PagerDuty 或 Slack 等服務。如需通知管道的完整清單,請參閱「通知選項」。
快訊類型
Cloud Monitoring 支援多種快訊。舉例來說,您可以定義:
- 指標門檻快訊:如果指標在特定時間範圍內高於或低於某個值,或是指標增幅/降幅達到預定百分比,則觸發快訊。
- 預算快訊:設定門檻規則,當實際或預估費用超過一定百分比的預算 (以您設定的規則為準),則觸發通知。請注意,快訊不會限制 API 用量,只會讓您在支出金額接近指定金額時收到提醒。
- 配額快訊:Google Cloud Platform 設定多項配額,您可用來追蹤及限制專案或機構使用的資源。使用快訊,即可在用量接近配額限制時傳送通知。
詳情請參閱「快訊政策類型」。
管理快訊政策
您可以使用 Cloud 控制台或 Cloud Monitoring API,在專案中加入快訊政策。如要瞭解如何查看專案的指標型快訊政策清單,以及如何修改這些政策,請參閱:
建立快訊
建立快訊時,您必須:
- 根據指標資料定義快訊觸發條件。
- 定義要接收快訊通知的通知管道。
以下範例說明如何設定快訊觸發條件,這裡使用的條件是指:任一 API 的 Google 地圖平台服務使用率在 5 分鐘內超過 2 個要求。
如要建立快訊,請執行下列操作:
- 在 Cloud 控制台中選取「Monitoring」:
- 選取「Alerting」(快訊)。
- 選取「Edit Notifications Channel」(編輯通知管道),定義快訊發出通知的方式。在這個範例中,您將使用自己的電子郵件地址。
- 在「通知管道」下的「Email」(電子郵件) 中,點選「Add New」(新增)。
- 在「Email Address」(電子郵件地址) 和「Display Name」(顯示名稱) 欄位中輸入內容。
- 選取「Save」(儲存)。
- 選取「Alerting」(快訊)。
- 選取「Create Policy」(建立政策)。
- 選取時間間隔,例如「7 days」(7 天)。
- 在「Alert Conditions」(快訊觸發條件) 下方,選取「New condition」(新增條件):
- 按一下「Select a Metric」(選取指標),接著在資源部分選取「Consumed API」(已使用的 API),在指標部分選取「Request Count」(要求數),然後點選「Apply」(套用)。
- (選用) 圖表下方會列出 service、quota_metrics、API method 和指標 value。選取「Add filter」(新增篩選器),即可根據這些資訊篩選資料。舉例來說,您可以使用篩選器指定 method 必須等於 google.places.Autocomplete.http,才能觸發快訊。
- 在「Transform data」(轉換資料) 下方的「Rolling window」(滾動週期) 選取「5 min」(5 分鐘),並在「Rolling window function」(滾動週期函式) 選取「mean」(平均值)。
- 選取「Next」(下一步)。
- 在「Configure alert trigger」(設定快訊觸發條件) 下方,將「Threshold」(門檻) 設為 2,即可指定在 5 分鐘內出現超過 2 個要求時觸發快訊。請注意,圖表現在會顯示紅線,代表所選時間間隔的快訊上限。在圖表中,您可以看到快訊的觸發位置。這張圖表有助於您在必要時調整限制。
- 點選「Next」(下一步)。
- 在「Configure notifications and finalize alert」(設定通知並完成快訊) 頁面上:
- 選取您建立的電子郵件地址做為「Notification Channel」(通知管道)。
- 在「Name the alert」(為快訊命名) 下方,輸入「My Test Alert」(我的測試快訊)。
- 選取「Create Policy」(建立政策)。
- 提出幾個 API 要求。請務必在五分鐘內提出超過兩個 API 要求,以產生快訊電子郵件通知。
- 收到快訊電子郵件後,請前往「Alerting」(快訊) 頁面。
- 在快訊表格中,按一下快訊即可查看更多資訊。
- 按一下快訊名稱即可查看快訊相關資訊,包括顯示觸發事件的圖表。
相關資源
如要進一步瞭解快訊,請參閱: