範例情境

您目前查看的是 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 Proxy,並為群組的所有成員設定適當的警報閾值,以便更快診斷問題。

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

步驟 1:監控近期 API 流量

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

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

    」一文。
  3. 按一下錯誤率高的 API Proxy 或目標,即可在右側窗格中查看詳細資料。請注意,這個範例中的 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」

    「調查」資訊主頁可讓您比較指標間的關聯活動,例如故障代碼與時間。
  2. 查看故障代碼與時間矩陣,瞭解過去一小時的故障代碼活動。請注意,方塊的顏色深淺代表故障代碼的相對量,顏色越深表示相對量越高。方塊顏色越深,相對音量就越高。

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

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

  4. 請注意,錯誤來源是 perfBenchmark_invalid_v1 API Proxy,而 HTTP 狀態碼是 500500 狀態碼是 Spike Arrest 政策違規的常見執行階段錯誤代碼。

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

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

步驟 4:設定 5xx 快訊

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

  1. 在「調查」資訊主頁的右側窗格中,依序選取 「更多」選單 >「建立快訊」

  2. 填寫快訊對話方塊中的欄位。系統會根據目前的環境預先填入條件欄位資料。例如:

  3. 按一下 [儲存]

日後,如果 perfBenchmark_invalid_v1 API Proxy 的 5xx 錯誤率在 5 分鐘內超過 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 Proxy,並為群組的所有成員設定適當的警報閾值,以便更快診斷問題。

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

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

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

步驟 7:解決 5xx 問題

請採取適當行動來解決 5xx 錯誤。舉例來說,根據診斷結果,您可能會執行下列其中一項工作:

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