您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件。 資訊
按照情境示例逐步瞭解如何排解 API 的 5xx 問題。
# | 步驟 | 說明 |
---|---|---|
1 | 監控近期 API 流量 | 查看近期 API 監控資料,瞭解過去 1 小時內曾有流量的所有 API Proxy 和目標。細查 API Proxy 或錯誤率偏高的目標。 |
2 | 找出 API 監控資料中的趨勢 | 針對 API 監控資料 (過去 3 個月內) 的歷來檢視畫面查看,取得更深入的分析。 |
3 | 調查 5xx 問題 | 請查看歷來產生最多相對磁碟區的錯誤代碼,進一步調查 5xx 問題的來源。(通常可使用一或多個錯誤代碼將 5xx 狀態碼分類)。 |
4 | 設定 5xx 快訊 | 設定快訊,即可在 5xx 狀態碼數量超過特定門檻時收到通知。 |
5 | 產生含有客戶詳細資料的自訂報表 (選用) | (選用) 產生自訂報表,找出觸發 5xx 錯誤的客戶詳細資料。 注意:只有機構組織管理員才能產生自訂報表。 |
6 | 將 API Proxy 分組為集合 | 您可以建立集合來將 API Proxy 分組,並為群組的所有成員設定適當的快訊門檻值,以便更快診斷問題。
|
7 | 解決 5xx 問題 | 根據調查和診斷結果,採取適當行動解決這 5xx 問題。 |
步驟 1:監控近期 API 流量
如要查看過去 1 小時內曾有流量的 API Proxy 和目標的 API 監控資料,請按照下列步驟操作:
- 在 Edge UI 中依序選取「Analyze」>「API Monitoring」>「Recent」,即可存取「Recent」資訊主頁。
請注意,過去一小時內錯誤率偏高的 API Proxy 和目標。
點選 API Proxy 或錯誤率偏高的目標,即可在右側窗格中查看詳細資料。請注意,本例的 5xx 錯誤百分比偏高。
如要進一步瞭解這個步驟,請參閱「監控近期 API 流量」一文。
步驟 2:找出 API 監控資料中的趨勢
如要針對過去三個月內曾有流量的 API Proxy 和目標,存取 API 監控資料的歷來檢視畫面:
- 在「最近」資訊主頁的右側窗格中,依序選取 >「在時間軸上查看」,即可存取時間軸資訊主頁。您也可以在 Edge UI 中依序點選「Analyze」>「API Monitoring」>「Timeline」。
- 查看 API Proxy 或目標隨著時間的變化趨勢。您會發現過去 7 天的趨勢一直都保持一致。
如要進一步瞭解這個步驟,請參閱「找出 API 監控資料中的趨勢」一文。
步驟 3:調查 5xx 問題
Apigee 提供一組錯誤碼,可協助您診斷問題。一般來說,5xx 狀態碼能使用一或多個錯誤代碼分類。
如何調查 5xx 問題:
- 在時間軸資訊主頁的右側窗格中,依序選取「」>「在調查中查看」,即可存取調查資訊主頁。您也可以在 Edge UI 中依序點選「Analyze」>「API Monitoring」>「Invetigate」(調查)。
您可以在「調查」資訊主頁中比較錯誤代碼與時間等指標的關聯活動。 查看錯誤碼與時間矩陣,查看過去 1 小時內的錯誤程式碼活動。請注意,因區塊顏色陰影變化而產生最大相對磁碟區的錯誤代碼。區塊越深,相對音量越大。
例如,
policies.ratelimit.SpikeArrestViolation
和policies.ratelimit.QuotaViolation
錯誤代碼在下列矩陣中顯示了較高的相對磁碟區:按一下
policies.ratelimit.SpikeArrestViolation
列中最暗的區塊 (第一個區塊),即可在右側窗格中查看更多詳細資料。
請注意,錯誤來源是 perfBenchmark_invalid_v1 API Proxy,而 HTTP 狀態碼是 500。500 狀態碼是違反尖峰流量防範政策的常見執行階段錯誤代碼。
查看「開發人員應用程式發行內容」(位於「潛在原因」面板正下方),找出錯誤率最高的開發人員應用程式。
如要進一步瞭解這個步驟,請參閱「找出問題」一文。
步驟 4:設定 5xx 快訊
根據「調查詳細資料」窗格中選取的情境設定快訊,即可在 5xx 狀態碼數量超過特定門檻時收到通知。
在調查資訊主頁的右側窗格中,依序選取「」>「建立快訊」。
填寫快訊對話方塊中的欄位。條件欄位會預先填入目前背景資訊的資料。範例說明如下:
點按「儲存」。
日後如果 perfBenchmark_invalid_v1 API Proxy 5 分鐘的 5xx 錯誤率超過 5%,系統會將通知傳送至指定的電子郵件地址,並在 UI 中顯示視覺快訊。例如:
如要進一步瞭解這個步驟,請參閱「設定快訊和通知」一文。
步驟 5:產生含有客戶詳細資料的自訂報表 (選用)
視需要產生自訂報表,以進一步瞭解觸發 5xx 錯誤的客戶。
在「報表」頁面上,根據快訊建立的自訂報表會採用以下格式命名:API Monitoring Generated: alert-name
。
請透過下列其中一種方式存取設定快訊時建立的自訂報表:
在左側導覽列中,依序選取「分析」>「自訂報表」>「報表」,即可顯示「報表」頁面。在清單中按一下報表名稱:「API Monitoring Generated: 5xx Alert」
按一下建立快訊時顯示的通知。範例說明如下:
新增下列維度:
- 開發人員應用程式
- 用戶端 ID
- 用戶端 IP 位址
如要根據特定開發人員應用程式顯示錯誤率偏高的情形,請新增類似下方的篩選條件:
and (developer_app eq 'perfBenchmarkApp0')
注意:在此情況下,請將開發人員應用程式從維度清單中移除。
點按「儲存」。
執行報表,查看觸發 5xx 狀態碼的開發人員應用程式和用戶端詳細資料。
如要進一步瞭解這個步驟,請參閱「建立自訂報表」一文。
步驟 6:將 API Proxy 分組至集合
您可以建立集合來將 API Proxy 分組,並為群組的所有成員設定適當的快訊門檻值,以便更快診斷問題。
- 在 Edge UI 中依序選取「Analyze」>「API Monitoring」>「Collections」,即可顯示「Collections」資訊主頁。
- 按一下「+ 最愛」。
- 選取「Proxy」。
- 從環境下拉式選單中選取「prod」。
- 點選「下一步」。
- 填寫集合對話方塊中的欄位。
- 點選「儲存」。
接下來,您可以像步驟 4 一樣設定快訊,並將維度設為您在上方定義的集合。
如要進一步瞭解這個步驟,請參閱「管理集合」。
步驟 7:解決 5xx 問題
採取適當行動解決 5xx 問題。例如,根據您的診斷,您可以選擇執行下列其中一項工作:
- 使用 Apigee Sense 判斷要求遽增是否可疑,並決定封鎖自訂報表中列出的用戶端 IP 位址。
- 新增配額政策,限制開發人員應用程式在特定時間內可對 API Proxy 發出的連線數量。
- 透過 API 營利,向開發人員收取使用特定呼叫次數的費用。