適用於:所有 APIM 層
您可以使用 Azure 監視器,對來自 Azure API 管理服務的計量或記錄進行視覺化、查詢、路由、封存及操作。 如需適用於 API 管理 的 Azure 監視器概觀,請參閱監視 API 管理。
提示
API 小組可以在工作區中使用這項功能。 工作區提供與 API 及其專屬 API 運行環境的隔離管理存取權。
在本教學課程中,您會了解如何:
- 檢視 API 的計量
- 設定警示規則
- 檢視活動記錄
- 啟用和檢視資源記錄
注意
APIM 支援使用一系列其他工具來觀察 API,包括內建分析,以及與 Application Insights 整合。 深入了解
必要條件
- 了解 Azure API 管理術語。
- 完成下列快速入門:建立 Azure API 管理執行個體。
- 同時也請完成下列教學課程:匯入和發佈您的第一個 API。
檢視 API 的計量
API 管理會每分鐘發出計量,讓您近乎即時地了解 API 的狀態和健康情況。 以下是最常使用的計量。 如需所有可用計量的清單,請參閱 計量。
容量 - 協助您決定是否升級/降級 APIM 服務。 計量每分鐘發出,並反映提出報告時預估的閘道容量。 計量的範圍為 0 到 100,是根據 CPU 和記憶體使用率等閘道資源和其他因素計算而來。
要求 - 協助您分析通過 API 管理服務的 API 流量。 計量會每分鐘發出,並回報具有維度的閘道要求數目。 依回應碼、位置、主機名稱和錯誤來篩選要求。
注意
工作區中無法使用「請求」指標。
重要
下列計量已遭淘汰:閘道要求總數、成功的閘道要求、未經授權的閘道要求、失敗的閘道要求、其他閘道要求。 請移轉至提供類似功能的 [要求] 計量。
存取計量:
在 Azure 入口網站中,瀏覽至您的 API 管理執行個體。 在 [概觀] 頁面的 [監視] 索引標籤上,檢閱 API 的重要計量。
若要詳細調查計量,請從左側功能表中選取 [監視>計量]。
提示
在工作區中,您可以檢視針對工作區閘道的容量度量。 流覽至工作區閘道左側功能表中的 [監視>計量 ]。
從下拉式清單中,選取您想了解的計量。 例如, 要求。
該圖表會顯示 API 呼叫的總數。 調整時間範圍,將焦點放在感興趣的期間。
您可以使用 [要求] 計量的維度來篩選圖表。 例如,選取 [新增篩選]、選取 [後端回應碼類別],然後輸入
500
作為值。 圖表中會顯示出 API 後端中已失敗的要求數目。
設定警示規則
您可以根據計量和活動記錄來接收警示。 在 Azure 監視器中,設定警示規則,以在觸發時執行動作。 常見動作包括:
- 傳送電子郵件通知
- 呼叫 Webhook
- 叫用 Azure 邏輯應用程式
若要根據要求計量來設定範例警示規則:
在 Azure 入口網站中,瀏覽至您的 API 管理執行個體。
從左側功能表中選取 [監視>警示]。
選取 [+ 建立]>[警示規則]。
在 [ 條件] 索引標籤上:
- 在 [訊號名稱] 中,選取 [要求]。
- 在 [警示邏輯] 中,檢閱或修改警示的預設值。 例如,更新靜態 閾值,這是應該觸發警示之後發生的次數。
- 在 [依維度分割] 的 [維度名稱] 中,選取 [閘道回應碼類別]。
- 在 [維度值] 中,針對用戶端錯誤 (例如未經授權或無效的要求) 選取 [4xx]。 如果維度值未出現,則選取 [新增自訂值],然後輸入 4xx。
- 在 [何時評估] 中,接受預設設定,或選取其他設定來設定規則的執行頻率。 選取 [下一步]。
在 [動作] 索引標籤上,選取或建立一或多個「動作群組」,以通知使用者有警示並採取動作。 例如,建立新的動作群組,以將通知電子郵件傳送至
admin@contoso.com
。 如需詳細步驟,請參閱在 Azure 入口網站中建立和管理動作群組。在 [建立警示規則] 的 [詳細資料] 索引標籤上,輸入警示規則的名稱和描述,然後選取嚴重性層級。
選擇性地設定剩餘的設定。 接著,在 [檢閱 + 建立] 索引標籤上,選取 [建立]。
選擇性地使用 HTTP 用戶端來模擬觸發警示的要求,以測試警示規則。 例如,在終端機中執行下列命令,並以 API 管理 實例的主機名取代 API 管理 主機名:
curl GET https://contoso.azure-api.net/non-existent-endpoint HTTP/1.1
警示會根據評估週期觸發,並會傳送電子郵件至 admin@contoso.com。
警示也會出現在 API 管理執行個體的 [警示] 頁面上。
活動記錄
活動記錄會提供您在 API 管理服務上執行作業的見解。 您可以使用活動記錄來判斷 API 管理服務上所執行之任何寫入作業 (PUT、POST、DELETE) 的「內容、對象和時間」。
注意
活動記錄不包含讀取 (GET) 作業或 Azure 入口網站 中執行的作業。
您可以在 API 管理服務中存取活動記錄,或在 Azure 監視器中存取所有 Azure 資源的記錄。
若要檢視活動記錄:
在 Azure 入口網站中,瀏覽至您的 API 管理執行個體。
選取 [活動記錄]。
選取所需的篩選範圍,然後選取 [套用]。
資源記錄
資源記錄 (Azure 監視器記錄) 會提供有關 APIM 作業與錯誤的豐富資訊,這些資訊在進行稽核與疑難排解時十分重要。 透過診斷設定啟用時,記錄會收集 APIM 閘道所接收和處理的 API 要求相關資訊。
注意
使用層不支援收集資源記錄。
提示
在具有 工作區的 API 管理實例中,API 平臺小組可以存取 API 管理服務之間的同盟記錄以進行集中式 API 監視,而工作區小組則可存取其工作區 API 專屬的記錄。 深入瞭解如何使用工作區進行 Azure 監視器記錄
若要設定資源記錄集合的診斷設定:
在 Azure 入口網站中,瀏覽至您的 API 管理執行個體。
在左側功能表的 [監視] 底下,選取 [診斷設定]>[+ 新增診斷設定]。
在 [ 診斷設定 ] 頁面上,輸入或選取設定的詳細數據:
- 診斷設定名稱:輸入描述性名稱。
- 類別群組:(選用) 為您的案例選取此項目。
- 在 [類別]底下:選取一或多個類別。 例如,選取 [與 ApiManagement 網關相關的記錄 ] 來收集對 API 管理閘道大部分要求的記錄。
- 在 [目的地詳細資料] 底下,選取一或多個選項,並指定目的地的詳細資料。 例如,將記錄傳送至 Azure Log Analytics 工作區、將記錄封存至記憶體帳戶,或將它們串流至事件中樞。 如需詳細資訊,請參閱 Azure 監視器中的診斷設定。
- 選取 [儲存]。
提示
如果您選取 Log Analytics 工作區,您可以選擇將資料儲存在資源特定數據表中(例如 ApiManagementGatewayLogs 數據表),或儲存在一般 AzureDiagnostics 數據表中。 我們建議針對支援其記錄目的地使用資源特定資料表。 深入了解
為一個多個記錄目的地設定詳細資料之後,選取 [儲存]。
注意
如果 APIM 服務的 MinApiVersion 屬性設定為高於 2022-09-01-preview 的任何 API 版本,新增診斷設定物件可能就會導致失敗。
注意
若要啟用 API 管理工作區的診斷設定,請參閱 建立和管理工作區。
在 Azure Log Analytics 中檢視記錄和計量
如果您在 Log Analytics 工作區中啟用收集記錄或計量的功能,則可能需要幾分鐘的時間,資料才會出現在 Azure 監視器中。
若要檢視資料:
在 Azure 入口網站中,瀏覽至您的 API 管理執行個體。
在左側功能表中的 [ 監視] 底下,選取 [ 記錄]。
執行查詢以檢視資料。 您可以使用數個隨附的範例查詢,或執行您自己的查詢。 例如,下列查詢會從 ApiManagementGatewayLogs 資料表中擷取最近 24 小時的資料:
ApiManagementGatewayLogs | where TimeGenerated > ago(1d)
如需與使用 API 管理的資源記錄有關的詳細資訊,請參閱:
修改 API 記錄設定
當您使用入口網站建立診斷設定以啟用 API 管理閘道或產生式 AI 閘道 (大型語言模型) 記錄的收集時,記錄會以預設設定啟用。 默認設定不包含要求或回應的詳細數據,例如要求或響應主體。 您可以調整所有 API 的記錄設定,或覆寫個別 API 的記錄設定。 例如,調整閘道日誌數據的取樣率或詳細程度,啟用 LLM 請求或響應消息的記錄,或停用某些 API 的記錄。
如需記錄設定的詳細資訊,請參閱 診斷 - 建立或更新 和 API 診斷 - 建立或更新 REST API 參考頁面。
設定所有 API 的記錄設定:
- 在 API 管理 實例的左側功能表中,選取 [API API>所有>API]。
- 從頂端列中,選取 [設定] 索引標籤。
- 向下捲動至 [診斷記錄] 區段,然後選取 [Azure 監視器] 索引標籤。
- 檢閱設定,並視需要進行變更。 選取 [儲存]。
設定特定 API 的記錄設定:
- 在 API 管理 實例的左側功能表中,選取 [APIAPI 的名稱。
- 從頂端列中,選取 [設定] 索引標籤。
- 向下捲動至 [診斷記錄] 區段,然後選取 [Azure 監視器] 索引標籤。
- 檢閱設定,並視需要進行變更。 選取 [儲存]。
重要
API 管理會將傳送至 Azure 監視器的記錄項目的大小強制限制為 32 KB。 記錄項目超過限制時的行為取決於記錄類別和記錄的數據屬性:
- API 管理閘道記錄 - 如果已收集,記錄專案中的每個要求或響應有效負載最多可以達到 8,192 個字節。 如果條目中屬性的合併大小超過 32 KB,API 管理會移除所有本文和追蹤資料以修剪條目。
- 生成 AI 閘道日誌 - LLM 要求或回應訊息的大小上限為 32 KB,若有收集,則會以單一條目傳送。 大於 32 KB 的訊息會分割並記錄在 32 KB 區塊中,其中包含序號以供稍後重建。 要求訊息和回應訊息不能超過每個 2 MB。
下一步
在本教學課程中,您已了解如何:
- 檢視 API 的計量
- 設定警示規則
- 檢視活動記錄
- 啟用和檢視資源記錄
前進到下一個教學課程: