Azure 監視器最佳做法:設定資料收集

本文屬於設定 Azure 監視器的建議情節。 其描述設定資料收集的建議步驟,需有此資料收集,才能針對您的 Azure 和混合式應用程式和資源啟用 Azure 監視器功能。

重要

Azure Monitor 的功能及其配置將有所不同,視商務需求和啟用功能成本的取捨而定。 下列每個步驟都會識別是否有潛在的成本,而且您應該先評估這些成本,再繼續進行。 如需完整的定價詳細資料,請參閱 Azure 監視器定價

設計 Log Analytics 工作區結構

您至少需要一個 Log Analytics 工作區來啟用 Azure 監視器記錄,這是執行下列作業的必要條件:

  • 從 Azure 資源收集記錄之類的資料。
  • 從 Azure 虛擬機器的客體作業系統收集資料。
  • 啟用大部分的 Azure 監視器深入解析。

Microsoft Sentinel 和適用於雲端的 Microsoft Defender等其他服務也會使用 Log Analytics 工作區,而且可以共用您用於 Azure 監視器的相同工作區。

建立 Log Analytics 工作區不需要任何費用,但在您設定了要收集至其中的資料之後,就有潛在費用。 如需記錄資料計費方式的資訊,請參閱 Azure 監視器記錄定價詳細資料

請參閱在 Azure 入口網站中建立 Log Analytics 工作區,以建立初始 Log Analytics 工作區,以及參閱管理 Log Analytics 工作區的存取權,以設定存取權。 雖然您可以使用可調整的方法 (例如 Resource Manager 範本) 來設定工作區,但通常不需要執行此步驟,因為大部分的環境都只需要最少數量。

請從單一工作區開始支援初始監視。 如需何時使用多個工作區,以及如何找出及設定這些工作區的相關指引,請參閱設計 Log Analytics 工作區設定

從 Azure 資源收集資料

Azure 資源的某些監視無需任何設定,即可自動進行。 若要收集更多監視資料,您必須執行設定步驟。

下表顯示從 Azure 資源收集所有可用資料的設定步驟。 其中也會顯示要在哪個步驟將資料傳送至 Azure 監視器計量和 Azure 監視器記錄。 下列各節會進一步詳細描述每個步驟。

Diagram that shows deploying Azure resource monitoring.

收集租用戶和訂用帳戶紀錄

系統會自動收集租用戶的 Microsoft Entra 記錄,以及您訂用帳戶的活動記錄。 當您將這些記錄傳送至 Log Analytics 工作區時,您可以使用 Log Analytics 中的記錄查詢,搭配其他記錄資料分析這些事件。 您也可以建立記錄搜尋警示,這是對 Microsoft Entra 記錄發出警示的唯一方法,並可讓您提供比活動記錄警示更複雜的邏輯。

將活動記錄傳送至工作區不需要任何費用,但 Microsoft Entra 記錄會有資料擷取和保留費用。

請參閱整合 Microsoft Entra 記錄與 Azure 監視器記錄建立診斷設定以將平台記錄和計量傳送至不同的目的地,為租用戶和訂用帳戶建立診斷設定,以將記錄項目傳送至 Log Analytics 工作區。

收集資源記錄和平台計量

Azure 中的資源會自動產生資源記錄,以提供資源內所執行作業的詳細資料。 不同於平台計量,您必須設定要收集的資源記錄。 建立診斷設定以將它們傳送至 Log Analytics 工作區,並將它們與 Azure 監視器記錄搭配使用的其他資料進行結合。 您也可以使用相同的診斷設定,將大部分資源的平台計量傳送至相同的工作區。 如此一來,您就可以使用記錄查詢搭配其他收集的資料來分析計量資料。

在 Log Analytics 工作區中收集資源記錄需要費用,因此請只選取具有重要資料的記錄類別。 收集所有類別會對收集價值低的資料產生成本。 如需類別的描述以及要收集哪些類別的建議,請參閱每個 Azure 服務的監視文件。 另請參閱 Azure 監視器最佳做法 - 成本管理,以取得最佳化記錄收集成本的建議。

請參閱建立診斷設定以收集 Azure 中的資源記錄和計量,以建立 Azure 資源的診斷設定。

由於需要為每個 Azure 資源建立診斷設定,因此請使用 Azure 原則,在建立每個資源時自動建立診斷設定。 每個 Azure 資源類型都有一組唯一的類別,其必須列在診斷設定中。 因此,每個資源類型都需要個別的原則定義。 某些資源類型具有內建原則定義,您可以在不修改的情況下指派這些定義。 針對其他資源類型,您必須建立自訂定義。

如需為特定 Azure 服務建立原則定義的流程,以及大規模建立診斷設定的詳細資料,請參閱使用 Azure 原則大規模建立分析設定

啟用深入解析

深入解析會特定服務提供特殊化監視體驗。 它們會使用已收集的相同資料 (例如平台計量和資源記錄),但會提供自訂活頁簿,協助您識別並分析最重要的資料。 除了收集該服務的資源記錄以外,大部分深入解析都可以在 Azure 入口網站中使用,不需要任何設定。 請參閱每個 Azure 服務的監視文件,以判斷其是否有深入解析,以及是否需要設定。

深入解析不需要任何費用,但可能會向您收取任何其收集的資料費用。

請參閱 Azure 監視器深入解析概觀,以了解 Azure 監視器中可用深入解析和解決方案的清單。 如需任何唯一的設定或定價資訊,請參閱每個深入解析和解決方案的文件。

重要

下列深入解析比其他深入解析更為複雜,並具有更多設定指導方針:

監視虛擬機器

虛擬機器會產生類似其他 Azure 資源的資料,但需要代理程式從客體作業系統收集資料。 虛擬機器也具有獨特的監視需求,因為會有不同的工作負載在其上執行。 如需使用 Azure 監視器監視虛擬機器的專用案例,請參閱使用 Azure 監視器監視 Azure 虛擬機器

監視容器

容器會產生類似其他 Azure 資源的資料,但需要 Log Analytics 代理程式的容器化版本,才能收集必要的資料。 容器深入解析可協助您準備容器化環境以進行監視。 其可搭配協力廠商工具運作,以提供 Azure Kubernetes Service (AKS) 及其所支援工作流程的全面監視。 如需使用 Azure 監視器監視 AKS 的專用案例,請參閱使用 Azure 監視器監視 AKS Azure Kubernetes Service

監視應用程式

Azure 監視器會使用 Application Insights 監視您的自訂應用程式,您必須針對您想要監視的每個應用程式進行設定。 設定流程會有所不同,取決於受監視的應用程式類型和您想要執行的監視類型。 Application Insights 收集的資料會儲存在 Azure 監視器計量、Azure 監視器記錄和 Azure Blob 儲存體中,取決於功能。 效能資料會同時儲存在 Azure 監視器計量和 Azure 監視器記錄中,不需要更多設定。

建立應用程式資源

Application Insights 是 Azure 監視器的功能,用於監視您的雲端原生和混合式應用程式。

您可以針對要監視的每個應用程式,在 Application Insights 中建立資源,或針對多個應用程式建立單一應用程式資源。 監視策略的基本決策,是針對多個應用程式使用個別還是單一應用程式資源。 個別資源可以節省成本,並防止混合來自不同應用程式的資料,但單一資源可以藉由將所有相關遙測資料放在一起來簡化監視。 如需協助您做出此設計決策的準則,請參閱我應該部署多少 Application Insights 資源

建立應用程式資源時,您必須選取要使用傳統應用程式還是工作區型應用程式。 請參閱建立 Application Insights 資源來建立傳統應用程式。 請參閱工作區型 Application Insights 資源,來建立工作區型應用程式。 Application Insights 收集的記錄資料會儲存在工作區型應用程式的 Azure 監視器記錄中。 傳統應用程式的記錄資料會與 Log Analytics 工作區分開儲存,如資料結構中所述。

設定無程式碼或程式碼型監視

若要啟用應用程式的監視,您必須決定要使用無程式碼監視還是程式碼型監視。 設定流程會有所不同,取決於此決策和您要監視的應用程式類型。

無程式碼監視最容易實作,而且可以在程式碼開發之後進行設定。 其不需要對您的程式碼進行任何更新。 如需如何根據應用程式啟用監視的資訊,請參閱:

程式碼型監視更容易自訂並收集更多遙測資料,但其需要在 Application Insights SDK NuGet 套件上將相依性新增至您的程式碼。 如需如何根據應用程式啟用監視的資訊,請參閱:

設定可用性測試

Application Insights 中的可用性測試是週期性測試,定期從世界各地監視應用程式的可用性和回應性。 您可以免費建立簡單的 Ping 測試。 您也可以建立一連串 Web 要求來模擬具有相關成本的使用者交易。

如需不同測試類型的摘要以及建立測試的資訊,請參閱監視任何網站的可用性

設定分析工具

Application Insights 中的分析工具可提供 .NET 應用程式的效能追蹤。 其可協助您識別在處理特定 Web 要求時花費時間最長且「經常存取」的程式碼路徑。 設定分析工具的流程會有所不同,取決於應用程式的類型。

如需設定分析工具的資訊,請參閱使用 Application Insights 來分析 Azure 中的生產應用程式

設定快照偵錯工具

Application Insights 中的快照偵錯工具會監視 .NET 應用程式的例外狀況遙測。 它會收集前幾個擲回例外狀況的快照集,讓您取得診斷生產環境中問題所需的資訊。 設定快照偵錯工具的流程會有所不同,取決於應用程式的類型。

如需設定快照偵錯工具的資訊,請參閱 .NET 應用程式中的例外狀況偵錯快照集

下一步

針對所有 Azure 資源設定了資料收集後,請參閱分析和視覺化資料,以查看分析此資料的選項。