設定快訊和通知

本頁適用於 ApigeeApigee Hybrid

查看 Apigee Edge 說明文件。

API 監控的主要用途之一,就是讓您掌握異常事件或模式 (例如流量或延遲時間的尖峰)。如要追蹤這類事件,您可以設定快訊,在發生指定事件時觸發。觸發警報的實際事件稱為事件

您可以為警示設定特定規則,例如,警示可能會因 Proxy 上的 500 回應代碼 (內部服務錯誤) 而觸發。發生快訊事件時,您可以在「Alerting」 Google Cloud console 頁面的「Incidents」窗格中查看詳細資料。

如要接收特定快訊觸發時的通知,您可以為快訊設定通知。事件發生時,Apigee 會傳送通知給您,其中包含事件摘要,包括 Google Cloud console 和 Apigee UI 的連結,方便您進一步調查。

API 監控有兩種類型的快訊:

以指標為準的快訊

當 API 資料的指標達到指定等級,或開始快速變動時,系統就會觸發以指標為依據的快訊。您可以使用兩個主要屬性定義警示規則:

  • 指標:觸發快訊的數量,例如請求數。
  • 門檻:指標必須達到這個門檻才能觸發快訊。

以下各節提供以指標為依據的警示範例。

代理伺服器的回應代碼 500 的警示

下例會在傳回回應代碼 500 (內部伺服器錯誤) 時建立快訊。您可以為任何回應碼建立類似的快訊。

如要建立快訊,請先執行下列步驟:

  1. 在 Google Cloud console中開啟「Create alerting policy」頁面。

  2. 按一下「選取指標」
  3. 接著取消選取「Active」按鈕。

    注意:如果貴機構沒有近期的 API 流量資料,除非取消選取這個選項,否則系統不會顯示下一個步驟的指標。

  4. 依下列步驟選取指標:
    1. 如果您使用的是 Apigee hybrid 1.12 版,請複製下列內容並貼到「選取指標」欄位中:
      apigee.googleapis.com/proxy/response_count
    2. 選取「Apigee Proxy」
    3. 在右側開啟的面板中,選取「Proxy」
    4. 在右側的下一個窗格中,選取「Apigee proxy response count」
    5. 點按「套用」
  5. 新增回應代碼的篩選器,如下所示:
    1. 按一下「+ 新增篩選器」
    2. 點選「Filter」欄位,然後從下拉式選單中選取「response_code」response_code
    3. 在「比較子」中選取「=」
    4. 在「Value」欄位中,輸入 500
    5. 按一下 [完成]

設定快訊觸發條件

如要設定觸發快訊的事件,請先按一下左側窗格中的「Configure trigger」(設定觸發條件)。然後執行下列步驟:

  1. 在「Condition type」下方,選取「Threshold」
  2. 在「Alert trigger」(快訊觸發條件) 欄位中,選取「Any time series violates」(任何時間序列違反條件時)
  3. 在「Threshold position」(門檻位置) 欄位中,選取「Above threshold」(高於門檻)
  4. 在「Threshold value」欄位中輸入「1」

設定這些選項後,系統會在傳回代碼 500 的回應時觸發快訊。

按一下「Next」,開啟「Configure notifications and finalize alert」窗格。

設定快訊通知

在「Configure notifications and finalize alert」窗格中,您可以設定在觸發快訊時傳送的通知。方法如下:

  1. 按一下「Notification Channels」欄位。如果您已為通知建立管道 (例如電子郵件地址或簡訊號碼),可以選取「Notification Channels」(通知管道) 底下的管道。

    否則,您必須選取「管理通知管道」來新增管道。系統隨即會開啟「通知管道」窗格,您可以在其中新增一或多個管道。詳情請參閱「 管理通知管道」。完成後,請返回「設定通知並完成快訊」窗格。

    注意:建立新管道後,您可能需要按一下「管理通知管道」旁的重新整理按鈕,才能顯示新管道。

    選取一或多個通知管道後,按一下「確定」

  2. 您可以在「Documentation」欄位中新增要與通知一起傳送的訊息。舉例來說,訊息可能會說明警示的原因,並包含說明如何回應警示的說明文件連結。
  3. 點選「下一步」查看快訊詳細資料。如果您滿意這些設定,請按一下「建立政策」建立快訊政策。

新增條件:針對 Proxy 上的 HTTP POST 要求,針對回應碼 500 發出快訊

您可以為警報建立多個條件。舉例來說,在前一個章節所述的 Proxy 上,針對回應碼 500 的警示,您可能會想新增只針對 HTTP POST 要求觸發警示的條件。如要這麼做,只要按照前一個範例中的步驟操作即可,但在步驟 8 後,請新增另一個篩選器,如下所示:

  1. 按一下「+ 新增篩選器」
  2. 點選「Filter」欄位,然後在下拉式清單中選取「method HTTP method」
  3. 在「Comparator」欄位中選取「=」
  4. 在「Value」欄位中輸入 POST
  5. 按一下 [完成]

然後繼續執行「設定快訊觸發條件」中的步驟。完成後,當 Proxy 收到 HTTP POST 要求的 500 回應碼時,系統就會觸發快訊。

如需相關範例,請參閱 回應代碼和 HTTP 方法組合警示

查看事件詳細資料

觸發快訊的 API 事件稱為「事件」。您可以在 Google Cloud console「 快訊」頁面中查看近期事件的詳細資料。

指標和篩選器

指標是觸發警示的數量,例如請求數。本節將說明可用來建立指標型警示的指標和篩選器。指標分為兩種類型:

  • 新指標:新版 Apigee 指標,可改善效能和可靠性。這些指標目前適用於 Apigee 和 Apigee Hybrid 1.12 以上版本。建議您盡可能使用新的指標。
  • 原始指標:原始指標仍可搭配 Apigee hybrid 1.10 和 1.11 使用。

新指標

下表列出新的指標。

指標 說明
apigee.googleapis.com/proxy/details 與部署至 Apigee 環境的 Proxy 相關的詳細資料。
apigee.googleapis.com/proxy/request_count 自上次記錄樣本以來,向 Apigee Proxy 提出的要求數量。
apigee.googleapis.com/proxy/response_count Apigee API Proxy 傳送的回應數量。
apigee.googleapis.com/proxy/latencies 延遲時間分布情形,計算方式是從 Apigee Proxy 收到要求的時間,到 Apigee Proxy 將回應傳送至用戶端的時間。
apigee.googleapis.com/target/request_count 自上次記錄樣本以來,傳送至 Apigee 目標的要求數量。
apigee.googleapis.com/target/response_count 自上次記錄樣本以來,從 Apigee 目標收到的回應數量。
apigee.googleapis.com/target/latencies 延遲時間分布情形,計算方式是從要求傳送至 Apigee 目標的時間,到 Apigee Proxy 收到回應的時間。時間不含 Apigee API Proxy 額外負擔。

原始指標

下表列出上述表格中顯示的指標原始版本,這些版本仍可搭配 Apigee hybrid v1.10 和 v1.11 使用。

指標 說明
apigee.googleapis.com/proxyv2/details 與部署至 Apigee 環境的 Proxy 相關的詳細資料。
apigee.googleapis.com/proxyv2/request_count Apigee API Proxy 收到的要求總數。
apigee.googleapis.com/proxyv2/response_count Apigee API Proxy 傳回的回應總數。
apigee.googleapis.com/proxyv2/latencies_percentile 所有 API Proxy 回應對應要求的百分位數。
apigee.googleapis.com/targetv2/request_count Apigee API 目標收到的要求總數。
apigee.googleapis.com/targetv2/response_count Apigee API 目標傳回的回應總數。
apigee.googleapis.com/targetv2/latencies_percentile 所有 API 目標回應對要求的百分位數。

篩選器

您可以使用篩選器為 API 資料子集建立快訊。篩選器會指定定義子集的條件。舉例來說,您可以根據單一 Proxy 的資料建立警示。

您可以選擇下列篩選器:

篩選器 說明 可套用篩選器的指標
env 資料的環境。 全部
location 資料的位置。 全部
proxy_name 資料的 Proxy。 全部
proxy_deployment_type Apigee Proxy 的部署類型 apigee.googleapis.com/proxy/details

apigee.googleapis.com/proxyv2/details
runtime_version 資料的執行階段版本。 原始指標
instance_id 資料的執行個體 ID。 原始指標
method 資料的 HTTP 方法。 全部
response_code 資料的 HTTP 回應碼。 apigee.googleapis.com/proxy/response_count

apigee.googleapis.com/proxyv2/response_count
fault_code 資料的錯誤代碼。 apigee.googleapis.com/proxy/response_count

apigee.googleapis.com/proxyv2/response_count
fault_source 資料的錯誤來源。 apigee.googleapis.com/proxy/response_count

apigee.googleapis.com/proxyv2/response_count
percentile Apigee 代理程式回應延遲時間百分位數。 apigee.googleapis.com/proxyv2/latencies_percentile

記錄檔型快訊

除了上一節所述的指標快訊外,您還可以建立記錄快訊,監控 Cloud Logging 儲存的 API 資料。

設定記錄檔型快訊

以下範例說明如何設定以記錄為依據的快訊。詳情請參閱「在記錄檔探索工具中建構查詢」。

  1. 在 Google Cloud console中開啟「Logs Explorer」
  2. 選取「Logs Explorer」右側的「Show query」
  3. 在「Query」窗格中輸入查詢,如下所示。
    resource.type="apigee.googleapis.com/Environment"
    logName="projects/<project_id>/logs/apigee.googleapis.com%2Fanomaly_event"

    設定快訊間隔時間。

  4. 按一下 [Run query] (執行查詢)。結果會顯示在「Verify」(驗證) 中。請確認查詢會傳回要發出快訊的記錄項目。
  5. 按一下「Query」窗格下方的「Create alert」
  6. 請按照「建立記錄型快訊政策」對話方塊中的步驟建立快訊。 詳情請參閱「設定記錄檔型快訊」。