您正在查看 Apigee Edge 說明文件。
請參閱 Apigee X 說明文件。 info
快訊條件會定義特定狀態碼 (例如 404/502/2xx/4xx/5xx)、延遲時間和錯誤代碼門檻,當這些值超出時,就會在 UI 中觸發視覺快訊,並透過電子郵件、Slack、PagerDuty 或 webhook 等各種管道傳送通知。您可以在環境、API 代理程式或目標服務或區域層級設定快訊。系統觸發快訊時,會透過新增快訊和通知時定義的方式傳送通知。
舉例來說,如果在 5 分鐘內,部署到實際執行環境的 orders-prod API proxy 的 5xx 錯誤率超過 23%,您可能會觸發快訊並傳送通知給營運團隊。
下圖顯示警示在 UI 中的顯示方式:
以下是電子郵件通知範例,您可能會在觸發快訊時收到這類通知。
如要進一步瞭解詳情,請在警示通知的內文中點選下列連結:
- 點選「查看詳細資料」,即可查看更多詳細資料,包括快訊設定和過去一小時內每個條件的活動。
- 快訊定義:查看快訊定義。
- 快訊記錄:查看特定快訊的更多資訊。
- 點選「查看 Playbook」,即可查看建議的行動 (如有)。
- 查看 API Analytics 報表,查看警示條件的自訂報表。
下列各節將說明如何設定及管理警示和通知。
關於快訊類型
API Monitoring 的初始版本可讓您建立以模式為準的規則,根據一組預先定義的條件指定何時發出快訊。這類快訊稱為「固定」快訊,是 API Monitoring 初始版本唯一支援的快訊類型。
舉例來說,您可以在下列情況下發出固定快訊:
- [5xx 錯誤率] [大於] [10%],持續 [10 分鐘],來自 [目標 mytarget1]
- [2xx 錯誤計數] [小於] [50],持續 [5 分鐘],發生在 [us-east-1 區域]
- [p90 延遲時間] [大於] [750 毫秒],持續 [10 分鐘],發生於 [proxy myproxy1]
19.11.13 版 Security Reporting Beta 版本新增了以下類型的警報:
- 總流量 (Beta 版) 快訊。當流量在特定時間範圍內變動指定百分比時,您可以使用這類快訊來發出快訊。
- 異常 (Beta 版)快訊。這類快訊會在 Edge 偵測到流量和效能問題時發出,您不必事先預先判斷。接著,您可以針對這些異常狀況發出警示。
- 傳輸層安全標準 (TLS) 到期 (Beta 版)警示。快訊類型,可讓您在 TLS 憑證即將到期時發出通知。
由於 API Monitoring 現已支援多種快訊類型,因此「建立快訊」對話方塊現在會顯示選項,讓您選取快訊類型:
查看快訊設定
如要查看目前定義的快訊設定,請在 Edge UI 中依序點選「Analyze」>「Alert Rules」。
系統會顯示「Alert」頁面,如下圖所示:
如圖所示,「快訊」頁面可讓您:
查看貴機構觸發的快訊記錄
如要查看過去 24 小時內為貴機構觸發的快訊記錄,請在 Edge UI 中依序點選「Analyze」>「Alert Rules」,然後點選「History」分頁。
畫面上會顯示「快訊記錄」頁面。
按一下快訊名稱,即可在調查資訊主頁中查看快訊詳細資料。您可以搜尋警示名稱的全部或部分內容,藉此篩選清單。
新增快訊和通知
如何新增快訊和通知:
- 在 Edge 使用者介面中,依序按一下「Analyze」>「Alert Rules」。
- 按一下「+ 快訊」。
- 輸入警報的下列一般資訊:
欄位 說明 快訊名稱 快訊名稱。請使用描述觸發事件且對您有意義的名稱。名稱長度不得超過 128 個半形字元。 快訊類型 選取「固定」。如要進一步瞭解快訊類型,請參閱「關於快訊類型」。 說明 快訊說明。 環境 從下拉式清單中選取環境。 狀態 切換以啟用或停用快訊。 - 為會觸發快訊的第一個條件定義指標、門檻和維度。
條件欄位 說明 指標 請選取下列其中一個指標:
狀態碼:從清單中選取狀態碼,例如 401、404、2xx、4xx 或 5xx HTTP。
注意:
- 延遲:從下拉式清單中選取延遲值。具體來說:p50 (第 50 百分位數)、p90 (第 90 百分位數)、p95 (第 95 百分位數) 或 p99 (第 99 百分位數)。舉例來說,選取 p95 可設定快訊,在第 95 個百分位數的回應延遲時間大於下方設定的門檻時觸發。
錯誤代碼:從清單中選取類別、子類別和錯誤代碼。或者,您也可以在類別或子類別中選取下列任一選項:
- 全部:這個類別/子類別中所有錯誤代碼的總和必須符合指標標準。
- 任一:這個類別/子類別中的單一錯誤代碼必須符合指標條件。
詳情請參閱錯誤代碼參考資料。
- 總流量 (Beta 版):選取流量增加或減少。詳情請參閱「交通 (Beta 版) 快訊」。
門檻 設定所選指標的門檻:
- 狀態碼:將門檻設為百分比率、計數或每秒交易次數 (TPS)。
- 延遲:選取門檻,以總或目標延遲時間長度 (毫秒) 為單位。在這種情況下,如果指定的百分位數觀察到的延遲時間 (在有流量時會每分鐘更新) 超過指定時間長度範圍內的時間間隔門檻條件,系統就會觸發快訊。也就是說,系統不會在整個時間範圍內匯總門檻條件。
- 錯誤代碼:將門檻設為百分比率、計數或每秒交易次數 (TPS)。
維度 按一下「+ 新增維度」,然後指定要傳回結果的維度詳細資料,包括 API 代理程式、目標服務或開發人員應用程式,以及區域。 如果您將特定維度設為:
- 全部:維度中的所有實體都必須符合指標條件。您無法為「Latency」類型的指標選取「All」。
- 任何:僅適用於區域。維度中的實體必須符合任何單一區域的指標標準。
注意:如果是 API Proxy 或目標服務,請選取支援「任何」功能的集合。 - 組合:從清單中選取組合,指定一組 API Proxy 或目標服務。在這種情況下,集合中的任何實體都必須符合條件。
如果您將維度設為「目標」,可以選取目標服務或 ServiceCallout 政策指定的服務。ServiceCallout 政策的目標會顯示為前面加上 `sc://` 的值,例如 `sc://my.endpoint.net`。
- 按一下「顯示天氣資料」,即可查看過去一小時內的天氣資料。
如果錯誤率超過快訊條件門檻,圖表中會以紅色顯示。
按一下「隱藏條件資料」即可隱藏資料。
- 按一下「+ 新增條件」即可加入更多條件,然後重複步驟 4 和 5。
注意:如果指定多個條件,系統會在「所有」條件都符合時觸發快訊。
如要根據設定的警示條件建立自訂報表,請按一下「根據警示條件建立 API 分析報表」。如果您不是機構管理員,這個選項會顯示為灰色。
詳情請參閱「從快訊建立自訂報表」。
注意:您可以在儲存警示後修改自訂報表,詳情請參閱「管理自訂報表」一文。
- 按一下「+ 通知」新增快訊通知。
通知詳細資訊 說明 管道 選取要使用的通知管道,並指定目的地:電子郵件、Slack、PagerDuty 或 Webhook。 目的地 根據所選的管道類型指定目標: - 電子郵件:電子郵件地址,例如
joe@company.com
- Slack - Slack 管道網址,例如
https://hooks.slack.com/services/T00000000/B00000000/XXXXX
- PagerDuty - PagerDuty 代碼,例如
abcd1234efgh56789
Webhook - Webhook 網址,例如
https://apigee.com/test-webhook
。如要瞭解傳送至網址的物件,請參閱「Webhook 物件格式」。在 webhook 的網址中傳遞任何憑證資訊。例如
https://apigee.com/test-webhook?auth_token=1234_abcd
。您可以指定可剖析 webhook 物件以修改或處理該物件的端點網址。舉例來說,您可以指定 API (例如 Edge API) 的網址,或是任何可處理物件的端點。
注意:每則通知只能指定一個目的地。如要為相同管道類型指定多個目的地,請新增其他通知。
- 電子郵件:電子郵件地址,例如
- 如要新增其他通知,請重複執行步驟 8。
- 如果您新增了通知,請設定下列欄位:
欄位 說明 應對手冊 (選用) 自由格式文字欄位,可用於提供建議動作的簡短說明,以便在警示觸發時解決問題。您也可以指定內部 Wiki 或社群頁面的連結,以便參考最佳做法。通知會包含這個欄位中的資訊。這個欄位的內容不得超過 1,500 個半形字元。 節流 傳送通知的頻率。從下拉式清單中選取值。有效值包括:15 分鐘、30 分鐘和 1 小時。 - 按一下「儲存」。
Webhook 物件格式
如果您將 Webhook 網址指定為警示通知的目的地,則傳送至該網址的物件會採用以下格式:{ "alertInstanceId": "event-id", "alertName": "name", "org": "org-name", "description": "alert-description", "alertId": "alert-id", "alertTime": "alert-timestamp", "thresholdViolations":{"Count0": "Duration=threshold-duration Region=region Status Code=2xx Proxy=proxy Violation=violation-description" }, "thresholdViolationsFormatted": [ { "metric": "count", "duration": "threshold-duration", "proxy": "proxy", "region": "region", "statusCode": "2xx", "violation": "violation-description" } ], "playbook": "playbook-link" }
thresholdViolations
和 thresholdViolationsFormatted
屬性包含快訊的詳細資料。thresholdViolations
屬性包含單一包含詳細資料的字串,而 thresholdViolationsFormatted
則包含描述警示的物件。通常您會使用 thresholdViolationsFormatted
屬性,因為它較容易解碼。
上方範例顯示,當您根據 HTTP 2xx 狀態碼 (如 statusCode
屬性所示) 設定快訊指標觸發條件時,固定快訊的內容。
這些屬性的內容取決於警示類型 (例如固定或異常) 和警示的特定設定。舉例來說,如果您根據錯誤代碼建立固定快訊,thresholdViolationsFormatted
屬性就會包含 faultCode
屬性,而非 statusCode
屬性。
下表列出不同警示類型的 thresholdViolationsFormatted
屬性所有可能的屬性:
快訊類型 | 可能的門檻違規事項格式化內容 |
---|---|
固定 | metric, proxy, target, developerApp, region, statusCode, faultCodeCategory, faultCodeSubCategory, faultCode, percentile, comparisonType, thresholdValue, triggerValue, duration, violation |
總流量 | metric, proxy, target, developerApp, region, comparisonType, thresholdValue, triggerValue, duration, violation |
異常狀況 | metric, proxy, target, region, statusCode, faultCode, percentile, sensitivity, violation |
TLS 到期時間 | envName, certificateName, thresholdValue, violation |
根據快訊建立自訂報表
如要根據快訊建立自訂報表,請按照下列步驟操作:
- 建立快訊時,請按一下「根據快訊條件建立 API 分析報表」,如「新增快訊和通知」一文所述。
儲存快訊後,UI 會顯示以下訊息:
Alert alertName saved successfully. To customize the report generated, click here.
點選訊息,即可在新分頁中開啟報告,並預先填入相關欄位。自訂報表的預設名稱為:
API Monitoring Generated alertName
- 視需要編輯自訂報表,然後按一下「儲存」。
- 按一下清單中的報表名稱,然後執行自訂報表。
如要管理根據快訊條件建立的自訂報表,請按照下列步驟操作:
- 在 Edge 使用者介面中,依序按一下「Analyze」>「Alert Rules」。
- 按一下「設定」分頁標籤。
- 在「報表」欄中,按一下與要管理的快訊相關聯的自訂報表。
系統會在新分頁中顯示自訂報表頁面。如果「報表」欄為空白,表示您尚未建立自訂報表。如有需要,您可以編輯快訊,新增自訂報表。
- 視需要編輯自訂報表,然後按一下「儲存」。
- 按一下清單中的報表名稱,然後執行自訂報表。
啟用或停用快訊
如要啟用或停用快訊,請按照下列步驟操作:
- 在 Edge 使用者介面中,依序按一下「Analyze」>「Alert Rules」。
- 在「狀態」欄中,按一下與要啟用或停用的警示相關聯的切換鈕。
編輯快訊
如何編輯快訊:
- 在 Edge 使用者介面中,依序按一下「Analyze」>「Alert Rules」。
- 按一下要編輯的警示名稱。
- 視需要編輯警示。
- 按一下 [儲存]。
刪除快訊
如何刪除快訊:
- 在 Edge 使用者介面中,依序按一下「Analyze」>「Alert Rules」。
- 將游標移至要刪除的快訊上,然後按一下動作選單中的 。
建議快訊
Apigee 建議您設定下列警示,以便在發生常見問題時收到通知。 部分警示僅適用於 API 的實作方式,且僅在特定情況下才有用。舉例來說,下列幾則警示僅適用於您使用 ServiceCallout 政策或 JavaCallout 政策 時。
快訊 | UI 範例 | API 範例 |
---|---|---|
所有/任何 API 的 5xx 狀態碼 | 為 API Proxy 設定 5xx 狀態碼快訊 | 使用 API 為 API Proxy 設定 5xx 狀態碼快訊 |
API Proxy 的 P95 延遲時間 | 為 API Proxy 設定 P95 延遲時間快訊 | 使用 API 為 API Proxy 設定 P95 延遲時間快訊 |
所有 API 代理程式的 404 (找不到應用程式) 狀態碼 | 為所有 API Proxy 設定 404 (找不到應用程式) 狀態碼快訊 | 針對使用 API 的所有 API Proxy 設定 404 (找不到應用程式) 狀態碼快訊 |
API 的 API Proxy 數量 | 為 API 設定 API Proxy 計數快訊 | 為使用 API 的 API 設定 API Proxy 數量快訊 |
目標服務的錯誤率 | 為目標服務設定錯誤率快訊 | 使用 API 為目標服務設定錯誤率快訊 |
ServiceCallout 政策的錯誤率 (如適用) | 為「ServiceCallout」政策設定錯誤率快訊 | 使用 API 為 ServiceCallout 政策設定錯誤率快訊 |
特定錯誤代碼,包括:
|
設定政策錯誤代碼快訊 | 使用 API 設定政策錯誤代碼快訊 |
為 API Proxy 設定 5xx 狀態碼快訊
以下範例說明如何使用 UI 設定快訊,當任何區域的飯店 API 代理程式 5xx 狀態碼的每秒交易次數 (TPS) 超過 100 次時,系統就會觸發快訊。詳情請參閱「新增快訊和通知」。
如要瞭解如何使用 API,請參閱「使用 API 為 Proxy 設定 5xx 狀態碼警示」。
為 API Proxy 設定 P95 延遲時間快訊
以下範例說明如何使用 UI 設定快訊,當任何區域的飯店 API 代理程式第 95 個百分位數的總回應延遲時間超過 100 毫秒 5 分鐘時,系統就會觸發快訊。詳情請參閱「新增快訊和通知」。
如要瞭解如何使用 API,請參閱「使用 API 為 API 代理程式設定 P95 延遲警示」
為所有 API Proxy 設定 404 (找不到應用程式) 快訊
以下範例說明如何使用 UI 設定快訊,當所有 API 代理程式在任何區域的 404 狀態碼百分比超過 5% 時,系統就會觸發快訊。詳情請參閱「新增快訊和通知」。
如要瞭解如何使用 API,請參閱「為使用 API 的所有 API Proxy 設定 404 (找不到應用程式) 快訊」。
為 API 設定 API Proxy 計數器快訊
以下範例說明如何使用 UI 設定快訊,當任一區域的 API 5xx 代碼數量在 5 分鐘內超過 200 時觸發快訊。在這個範例中,API 會在「Critical API Proxies」集合中擷取。如需詳細資訊,請參閱:
如要瞭解如何使用 API,請參閱「為使用 API 的 API 設定 API 代理程式計數警示」。
為目標服務設定錯誤率快訊
以下範例說明如何使用 UI 設定快訊,當目標服務的 500 錯誤率在任何區域 1 小時內超過 10%,就會觸發快訊。在這個範例中,目標服務會擷取至「重要目標」集合。如需詳細資訊,請參閱:
如要瞭解如何使用 API,請參閱「使用 API 為目標服務設定錯誤率警示」。
為 ServiceCallout 政策設定錯誤率快訊
以下範例說明如何使用 UI 設定快訊,當任何區域的 ServiceCallout 政策指定服務的 500 錯誤率超過 10% 時,就會觸發快訊。如需詳細資訊,請參閱:
如要瞭解如何使用 API,請參閱「使用 API 設定服務標示政策的錯誤率快訊」。
設定政策錯誤代碼快訊
以下範例說明如何使用 UI 設定快訊,當所有 API 的 VerifyJWT 政策 JWT AlgorithmMismatch
錯誤代碼計數在 10 分鐘內超過 5 個時,就會觸發快訊。如需詳細資訊,請參閱:
如要瞭解如何使用 API,請參閱「使用 API 設定政策錯誤代碼的錯誤代碼快訊」。