範例情境

您正在查看 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

逐步完成示範情境,說明如何排解 API 的 5xx 問題。

# 步驟 說明
1 監控近期的 API 流量 查看過去一小時內有流量的所有 API Proxy 和目標的近期 API 監控資料。深入瞭解錯誤率高達多少的 API Proxy 或目標。
2 找出 API 監控資料中的趨勢 您可以查看過去 3 個月內的 API 監控資料歷來資料,以便掌握更廣泛的資訊。
3 調查 5xx 問題 查看一段時間內相對發生次數最高的錯誤代碼,進一步調查 5xx 問題的來源。(一般來說,5xx 狀態碼可使用一或多個錯誤代碼進行分類)。
4 設定 5xx 快訊 設定快訊,在 5xx 狀態碼數量超過特定門檻時收到通知。
5 產生含有客戶詳細資料的自訂報表 (選用) 您可以選擇產生自訂報表,找出觸發 5xx 錯誤的用戶端詳細資料。

注意:您必須是機構組織管理員,才能產生自訂報表。

6 將 API Proxy 分組成集合 建立集合來將 API 代理程式分組,並為群組的所有成員設定適當的警示閾值,以便更快診斷問題。

7 解決 5xx 問題 根據調查和診斷結果,採取適當行動解決 5xx 問題。

步驟 1:監控近期的 API 流量

如要查看過去一小時內有流量的 API Proxy 和目標的 API 監控資料,請按照下列步驟操作:

  1. 在 Edge UI 中依序選取「Analyze」>「API Monitoring」>「Recent」,即可存取「Recent」資訊主頁。
  2. 請注意,過去一小時內 API 代理程式和目標的錯誤率偏高。

  3. 按一下錯誤率高達 % 的 API 代理程式或目標,即可在右側窗格中查看詳細資料。請注意這個範例中 5xx 錯誤的百分比偏高。

如要進一步瞭解這個步驟,請參閱「監控近期的 API 流量」。

步驟 2:找出 API 監控資料中的趨勢

如要查看 API Proxy 和目標的 API 監控資料歷來資料檢視,且這些項目在過去三個月內曾有流量:

  1. 在「近期」資訊主頁的右側窗格中,依序選取「「更多」選單」>「在時間軸中查看」,即可存取「時間軸」資訊主頁。您也可以在 Edge UI 中依序按一下「Analyze」>「API Monitoring」>「Timeline」
  2. 查看 API Proxy 或目標的長期趨勢。請注意,過去 7 天內趨勢一直維持一致。

如要進一步瞭解這項步驟,請參閱「找出 API 監控資料中的趨勢」。

步驟 3:調查 5xx 問題

Apigee 提供一組錯誤代碼,協助您診斷問題。一般來說,5xx 狀態碼可使用一或多個錯誤代碼進行分類。

如要調查 5xx 問題,請按照下列步驟操作:

  1. 在「時間軸」資訊主頁的右側窗格中,依序選取「「更多」選單」>「在『調查』中查看」,即可存取「調查」資訊主頁。或者,您也可以在 Edge UI 中依序按一下「Analyze」>「API Monitoring」>「Investigate」

    您可以使用 Investigate 資訊主頁,比較指標之間的關聯活動,例如錯誤代碼與時間。
  2. 查看錯誤代碼與時間矩陣,瞭解過去一小時內的錯誤代碼活動。根據區塊的色階,請注意相對數量最高的錯誤代碼。區塊顏色越深,相對音量就越高。

    舉例來說,policies.ratelimit.SpikeArrestViolationpolicies.ratelimit.QuotaViolation 錯誤代碼在下列矩陣中顯示的相對數量較高:錯誤碼

  3. 按一下 policies.ratelimit.SpikeArrestViolation 列中顏色最深的區塊 (第一個區塊),即可在右側面板中查看更多詳細資料。

  4. 請注意,錯誤來源為 perfBenchmark_invalid_v1 API 代理程式,HTTP 狀態碼則為 500500 狀態碼是違反「尖峰逮捕」政策的常見執行階段錯誤代碼。

  5. 查看「疑似原因」面板下方的「依開發人員應用程式分布」圖表,找出錯誤率最高的開發人員應用程式。

如要進一步瞭解這項步驟,請參閱「找出問題」。

步驟 4:設定 5xx 警示

根據「調查詳細資料」窗格中選取的內容設定快訊,當 5xx 狀態碼的數量超過特定門檻時,系統就會通知您。

  1. 在 Investigate 資訊主頁的右側窗格中,依序選取 「更多」選單 >「Create Alert」。

  2. 在警告對話方塊中填寫欄位。系統會在條件欄位中預先填入目前情境中的資料。例如:

  3. 按一下 [儲存]

日後,如果 perfBenchmark_invalid_v1 API 代理程式在 5 分鐘內的 5xx 錯誤率超過 5%,系統會傳送通知到指定的電子郵件地址,並在 UI 中顯示視覺快訊。例如:

如要進一步瞭解這個步驟,請參閱「設定快訊和通知」。

步驟 5:產生含有客戶詳細資料的自訂報表 (選用)

您可以視需要產生自訂報表,進一步瞭解觸發 5xx 錯誤的用戶端。

在「報表」頁面中,系統會使用以下格式命名根據快訊建立的自訂報表:API Monitoring Generated: alert-name

  1. 如要存取在設定快訊時建立的自訂報表,請使用下列任一方式:

    • 在左側導覽列中依序選取「分析」>「自訂報表」>「報表」,即可顯示「報表」頁面。按一下清單中的報表名稱:API Monitoring Generated: 5xx Alert

    • 在建立快訊時顯示的通知中點選。例如:

  2. 新增下列維度:

    • 開發人員應用程式
    • 用戶端 ID
    • 用戶端 IP 位址

  3. 如要查看特定開發人員應用程式 (錯誤率高) 的報表,請新增類似下列的篩選器:

    and (developer_app eq 'perfBenchmarkApp0')

    注意:在這種情況下,請從維度清單中移除「開發人員應用程式」。

  4. 按一下 [儲存]

  5. 執行這份報告,即可查看觸發 5xx 狀態碼的開發人員應用程式和用戶端的詳細資料。

如要進一步瞭解這個步驟,請參閱「建立自訂報表」。

步驟 6:將 API Proxy 分組成集合

建立集合來分組 API 代理程式,並為群組的所有成員設定適當的警示閾值,以便更快診斷問題。

  1. 在 Edge UI 中依序選取「Analyze」>「API Monitoring」>「Collections」,即可顯示「Collections」資訊主頁。
  2. 按一下「+ 集合」
  3. 選取「Proxy」
  4. 從環境下拉式選單中選取「prod」
  5. 點選「下一步」。
  6. 在收集對話方塊中填寫欄位。
  7. 點選「儲存」

接著,您可以設定快訊 (類似步驟 4),並將維度設為您在上述步驟中定義的集合。

如要進一步瞭解這個步驟,請參閱「管理集合」。

步驟 7:解決 5xx 問題

採取適當行動解決 5xx 問題。舉例來說,您可以根據診斷結果執行下列任一項工作:

  • 使用 Apigee Sense 判斷要求激增是否可疑,並決定是否要封鎖自訂報表中找出的用戶端 IP 位址。
  • 新增配額政策,限制開發人員應用程式在特定時間內可對 API Proxy 建立的連線數。
  • 透過 API 營利,針對超過一定數量的呼叫收取開發人員使用費。