共用方式為


應用程式閘道的診斷記錄

應用程式閘道記錄會提供資源及其作業相關事件的詳細資訊。 這些記錄適用於存取、活動、防火牆和效能等事件 (僅適用於 V1)。 針對問題進行疑難排解或建置分析儀表板時,記錄中的細微資訊會很有説明,方法是取用此原始資料。

記錄可供應用程式閘道的所有資源使用;不過,若要取用它們,您必須在您選擇的儲存位置中啟用其集合。 Azure 監視器服務會啟用 Azure 應用程式閘道中的記錄功能。 建議您使用 Log Analytics 工作區,因為您可以輕鬆地使用其預先定義的查詢,並根據特定記錄條件設定警示。

資源記錄的類型

您可以在 Azure 中使用不同類型的記錄來管理和針對應用程式閘道進行疑難排解。

注意

記錄僅適用於在 Azure Resource Manager 部署模型中部署的資源。 您無法將記錄使用於傳統部署模型中的資源。 若要深入了解這兩個模型,請參閱了解 Resource Manager 部署和傳統部署一文。

使用工作區轉換最佳化存取記錄的範例

範例 1:選擇性投影資料行:假設您有具有 20 個資料行的應用程式閘道存取記錄,但您只想要分析來自 6 個特定資料行的資料。 藉由使用工作區轉換,您可以將這 6 個資料行投影到工作區,有效地排除其他 14 個資料行。 即使不會儲存來自那些排除資料行的原始資料,但是 [記錄] 刀鋒視窗中仍會出現這些資料行的空白預留位置。 此方法會將儲存體最佳化,並確保只保留相關資料以供分析。

注意

在 [記錄] 刀鋒視窗中,選取 [試用新的 Log Analytics] 選項可讓您更充分地控制使用者介面中顯示的資料行。

範例 2:專注於特定狀態代碼:分析存取記錄時,不需處理所有記錄項目,而是可以撰寫查詢,只擷取具有特定 HTTP 狀態代碼 (例如 4xx 和 5xx) 的資料列。 由於大部分的要求理想上會落在 2xx 和 3xx 類別 (代表回應成功),因此專注於有問題的狀態代碼會縮小資料集的範圍。 此目標方法可讓您擷取最相關且可採取動作的資訊,使其既有效又符合成本效益。

從 Azure 診斷移至資源特定資料表建議的轉換策略:

  1. 評估目前的資料保留期:判斷 Azure 診斷資料表中目前保留資料的持續時間 (例如:假設診斷資料表會保留資料 15 天)。
  2. 建立資源特定保留:使用資源特定資料表實作新的診斷設定。
  3. 平行資料收集:針對暫時期間,在 Azure 診斷和資源特定設定中並行收集資料。
  4. 確認資料正確性:驗證兩個設定中的資料收集正確且一致。
  5. 移除 Azure 診斷設定:移除 Azure 診斷設定,以防止重複資料收集。

其他儲存位置:

  • Azure 儲存體帳戶:如果記錄會儲存一段較長的持續期間,並在需要時加以檢閱,則最好針對記錄使用儲存體帳戶。
  • Azure 事件中樞:如果要整合其他安全性資訊和事件管理 (SIEM) 工具以利於在資源上取得警示,則事件中樞是絕佳的選項。
  • Azure 監視器合作夥伴整合

深入了解 Azure 監視器的診斷設定目的地

透過 PowerShell 啟用記錄功能

每個 Resource Manager 資源都會自動啟用活動記錄功能。 您必須啟用存取和效能記錄功能,才能開始收集可透過這些記錄取得的資料。 使用下列步驟啟用記錄:

  1. 請記下您的儲存體帳戶的資源識別碼 (記錄資料的儲存之處)。 此值的形式為:/subscriptions/<subscriptionId>/resourceGroups/<資源群組名稱>/providers/Microsoft.Storage/storageAccounts/<儲存體帳戶名稱>。 您可以使用訂用帳戶中的所有儲存體帳戶。 您可以使用 Azure 入口網站來尋找此資訊。

    儲存體帳戶端點的螢幕擷取畫面

  2. 請記下您的應用程式閘道的資源識別碼 (將為其啟用記錄功能)。 此值的形式為:/subscriptions/<subscriptionId>/resourceGroups/<資源群組名稱>/providers/Microsoft.Network/applicationGateways/<應用程式閘道名稱>。 您可以使用入口網站來尋找此資訊。

    應用程式閘道屬性的螢幕擷取畫面

  3. 使用下列 Powershell Cmdlet 啟用診斷記錄功能:

    Set-AzDiagnosticSetting  -ResourceId /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/applicationGateways/<application gateway name> -StorageAccountId /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Storage/storageAccounts/<storage account name> -Enabled $true     
    

提示

活動記錄不需要個別的儲存體帳戶。 將儲存體用於記錄存取和效能會產生服務費用。

透過 Azure 入口網站啟用記錄功能

  1. 在 Azure 入口網站中,找到您的資源並按一下 [診斷設定]

    應用程式閘道有三個記錄:

    • 存取記錄檔
    • 效能記錄檔
    • 防火牆記錄檔
  2. 如果要開始收集資料,請按一下 [開啟診斷]

    開啟診斷

  3. [診斷設定] 頁面中提供診斷記錄的設定。 在此範例中,Log Analytics 會儲存記錄。 您也可以使用事件中樞和儲存體帳戶來儲存診斷記錄。

    啟動設定程序

  4. 輸入要設定的名稱、確認該設定,然後選取 [儲存]

若要檢視及分析活動記錄資料,請參閱分析監視資料

檢視及分析存取、效能和防火牆記錄

Azure 監視器記錄可以從您的 Blob 儲存體帳戶收集計數器和事件記錄。 如需詳細資訊,請參閱分析監視資料

您也可以連接到儲存體帳戶並擷取存取和效能記錄的 JSON 記錄項目。 下載 JSON 檔案後,可以將它們轉換成 CSV,並在 Excel、PowerBI 或任何其他資料視覺化工具中檢視它們。

提示

如果您熟悉 Visual Studio 以及在 C# 中變更常數和變數值的基本概念,您可以使用 GitHub 所提供的記錄檔轉換器工具

下一步