設定快訊和通知

本頁內容適用於 ApigeeApigee Hybrid

查看 Apigee Edge 說明文件。

API 監控的主要用途之一,是讓您掌握異常事件或模式,例如流量或延遲時間突然增加。如要追蹤這類事件,您可以設定快訊,在發生指定事件時觸發快訊。觸發快訊的實際事件稱為「事件」

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

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

API 監控提供兩種快訊:

以指標為準的快訊

當 API 資料的指標達到指定層級或開始快速變更時,系統就會觸發指標型快訊。您可以使用兩項主要屬性定義快訊規則:

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

下列各節提供以指標為準的快訊範例。

Proxy 上的回應代碼 500 警告

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

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

  1. 在 Google Cloud 控制台中,依序前往「Monitoring」(監控) >「Alerting」(快訊) >「Policies」(政策) 頁面。

    前往「建立快訊政策」

  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」(Apigee 代理伺服器回應計數)。
    5. 按一下 [套用]
  5. 新增回應代碼的篩選器,如下所示:
    1. 按一下「+ 新增篩選器」
    2. 點選「篩選器」欄位,然後從下拉式選單中選取「response_code」response_code
    3. 在「比較子」中選取「=」
    4. 在「Value」(值) 欄位中,輸入 500
    5. 按一下 [完成]

設定快訊觸發條件

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

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

設定完成後,只要系統傳回代碼 500 的回應,就會觸發快訊。

按一下「下一步」,開啟「設定通知並完成快訊」窗格。

設定快訊通知

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

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

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

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

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

  2. 您可以在「說明文件」欄位中新增訊息,這會隨通知一併傳送。舉例來說,訊息可能會說明警示原因,並提供說明文件連結,解釋如何處理警示。
  3. 按一下「下一步」查看快訊詳細資料。如果滿意這些設定,請按一下「建立政策」建立快訊政策。

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

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

  1. 按一下「+ 新增篩選器」
  2. 點選「Filter」(篩選器) 欄位,然後在下拉式清單中選取「method HTTP method」(方法 HTTP 方法)
  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 1.10 和 1.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 資料。

設定記錄型快訊

下一個範例說明如何設定以記錄為準的快訊。詳情請參閱「透過 Logs Explorer 建構查詢」。

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

    設定快訊間隔時間。

  4. 按一下 [Run query] (執行查詢)。結果會顯示在「Query results」(查詢結果) 窗格中。確認查詢會傳回您想收到快訊的記錄項目。
  5. 按一下「Query」(查詢) 窗格下方的「建立快訊」
  6. 按照「建立以記錄為基礎的警告政策」對話方塊中的程序建立警告。 詳情請參閱「設定記錄檔型快訊」。