建立自訂報表

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

您可以透過自訂報表深入查看特定 API 指標,並查看所需的確切資料。您可以在 API Monitoring 資訊主頁中,根據建立時設定的條件,使用預設的篩選器和指標建立自訂報表。此外,報表中會預設一組預設維度和指標

根據您的情境建立自訂報表

您可以根據下表所列的背景資訊,快速建立自訂報表。在「自訂報表」頁面中,使用 API Monitoring 建立的自訂報表名稱會是唯一的 (預設),如表格所示;您可以在編輯自訂報表時變更名稱。

自訂報表內容 自訂報表的預設命名慣例
最近的資訊主頁 API Monitoring Recent Generated
時間軸資訊主頁 API Monitoring Timeline Generated
調查資訊主頁 API Monitoring Investigate Generated
快訊條件 API Monitoring Generated: alert-name

預設維度和指標

根據預設,自訂報表會納入下表中列出的維度和指標,適用於所有 API Monitoring 產生的報表。

元件 預設值
維度 要求 URI
指標
  • 總回應時間
  • 目標回應時間
  • Proxy 錯誤
  • 目標錯誤

編輯自訂報表

如前文所述,自訂報表會預先設定一組預先定義的 API Monitoring 預設維度和指標。建立自訂報表後,您可以視需要編輯自訂報表,新增或刪除指標和維度。舉例來說,您可能想將調查範圍縮小到特定存取權權杖、開發人員應用程式、API 代理程式或要求 ID。

在下列自訂報表中,您可以新增預先定義的 Gateway Flow ID 維度,其中 Gateway Flow ID 包含向 Edge 提出的每個 API 要求的唯一 UUID。請注意,報表已使用 Request URI 維度:

以下範例會將 Client ID 維度新增至自訂報表。Client ID 維度包含發出 API 呼叫的開發人員的消費者金鑰 (API 金鑰),無論是在要求中以 API 金鑰的形式傳遞,或是納入 OAuth 權杖,皆是如此:

自訂報表包含所有 Client ID 值的資訊。下一個範例會新增篩選器,讓您為特定 Client ID 建立自訂報表:

如要進一步瞭解可新增至報表的所有預先定義維度和指標,請參閱「Analytics 指標、維度和篩選器參考資料」。

在下一個範例中,您會在自訂報表中加入篩選器,擷取 policies.ratelimit.QuotaViolation 錯誤代碼和 5xx 狀態碼的預設指標和維度:

如要進一步瞭解如何編輯自訂報表,請參閱「管理自訂報表」。

範例:使用自訂報表診斷部署問題

StatisticsCollector 政策附加至 API 代理程式,即可收集自訂分析資料,例如使用者或產品 ID、價格、REST 動作、目標版本、目標網址和訊息長度。資料可以來自 Apigee 預先定義的流程變數、要求標頭、查詢參數或您定義的自訂變數。

舉例來說,向 API 代理提出的要求會包含產品 ID、使用者 ID 和目標伺服器版本的標頭。這項要求的格式可能為:

curl -H "prodid:123456" -H "userid:98765" -H "targetversion:beta" http://myapi.com/myapi

接著,您可以使用標頭中的資訊,協助診斷 API Proxy 的執行階段問題。

如要為這些標頭建立自訂報表,請按照下列步驟操作:

  1. StatisticsCollector 政策新增至 API,擷取自訂標頭的值:

    <StatisticsCollector name="publishPurchaseDetails">
      <Statistics>
        <Statistic name="prodid" ref="request.header.prodid" type="integer">0</Statistic>
        <Statistic name="userid" ref="request.header.userid" type="integer">0</Statistic>
        <Statistic name="targetversion" ref="request.header.targetversion" type="string">alpha</Statistic>
      </Statistics>
    </StatisticsCollector>
  2. 部署 Proxy,並等待一段時間讓 Proxy 可供存取。

  3. 在 Edge 使用者介面中,依序點選「Analyze」>「API Monitoring」>「Recent」,即可查看 API 的任何問題。請注意,您會收到 myapi 代理程式發生 4xx 和 5xx 錯誤的訊息:

  4. 選取「myapi」myapi代理程式列,即可在「最近」資訊主頁的右側窗格中查看詳細資料。

  5. 在「最近」資訊主頁的右側窗格中,依序選取「「更多」選單」>「在『調查』中查看」,即可存取「調查」資訊主頁:

  6. 依據 myapi Proxy 篩選「Investigate」資訊主頁,然後查看頂端圖表中的「Status Code」。請注意,您會收到 403 和 501 錯誤:

  7. 在 Edge 使用者介面中,依序選取「Analytics」>「自訂報表」>「報表」,即可建立自訂報表,並將這些自訂指標的值設為維度。

  8. 選取「+ 自訂報表」,建立名為「myapi_errors」的自訂報表。

  9. 選取「指標」的「Proxy Errors」,然後將「匯總函式」設為「Sum」。您可以視需要新增更多指標。

  10. 選取預先定義的「回應狀態代碼」維度,然後將三個自訂統計資料 prodidtargetersionuserid 新增至「維度」:

  11. 設定「篩選器」,只納入 myapi API 代理程式 (apiproxy eq 'myapi') 的資料:

  12. 儲存報表。

  13. 執行過去 24 小時的報表。首次開啟報表時,您會看到 HTTP 403 和 501 錯誤的圖表:

  14. 在「摘要」下方,點選「403」或「510」,即可查看哪些產品產生錯誤。例如,您選取 403

  15. 按一下「摘要」下方的產品 ID,即可依目標版本 (Alpha 版或 Beta 版) 查看錯誤:

  16. 按一下「摘要」下方的目標版本,即可查看使用者發生的錯誤: