使用 Application Insights Profiler 來分析 Azure 中的生產應用程式
診斷應用程式的效能問題可能很困難,尤其是在動態雲端中的生產環境上執行時。 如果應用程式中的回應緩慢,那麼有可能是管線中處理要求的基礎結構、架構或應用程式程式碼所造成。
使用 Application Insights Profiler,您可以擷取、識別及檢視在 Azure 中執行之應用程式的效能追蹤,而不論案例為何。 Profiler 追蹤程序會自動大規模地進行,而且不會對您的使用者造成負面影響。 此 Profiler (分析工具) 會識別:
- 客戶執行之每個 Web 要求的回應時間中間值、最快值和最慢值。
- 處理特定 Web 要求時花費最多時間的「經常性」程式路徑。
請在您的所有 Azure 應用程式上啟用此 Profiler,以使用下列觸發程序收集資料:
- 取樣觸發程序:大約每小時隨機啟動一次 Profiler,持續兩分鐘。
- CPU 觸發程序:當 CPU 使用率百分比超過 80% 時啟動 Profiler。
- 記憶體觸發程序:當記憶體使用率高於 80% 時啟動 Profiler。
這些每一個觸發程序都可以加以設定、啟用或停用。
額外負荷和取樣演算法
Profiler 會在啟用了 Profiler 裝載應用程式的每個虛擬機器上每小時隨機執行兩分鐘。 Profiler 在執行時會對伺服器增加 5% 到 15% 的 CPU 額外負荷。
Profiler 中的支援
Profiler 可與下列 Azure 服務上所部署的 .NET 應用程式搭配運作。 在下面的連結中檢視針對每種服務類型啟用 Profiler 的特定指示。
計算平台 | .NET (>= 4.6) | .NET Core |
---|---|---|
Azure App Service | Yes | Yes |
適用於 Windows 的 Azure 虛擬機器和虛擬機器擴展集 | Yes | Yes |
適用於 Linux 的 Azure 虛擬機器和虛擬機器擴展集 | No | Yes |
Azure 雲端服務 | Yes | Yes |
適用於 Windows 的 Azure 容器執行個體 | No | Yes |
適用於 Linux 的 Azure 容器執行個體 | No | Yes |
Kubernetes | No | Yes |
Azure Functions | Yes | Yes |
Azure Service Fabric | Yes | 是 |
注意
您也可以使用 Java Profiler for Azure Monitor Application Insights (目前處於預覽狀態)。
如果您已啟用 Profiler 卻未看到追蹤,請參閱疑難排解指南。
限制
- 資料保留:預設資料保留期為 5 天。
- 分析 Web 應用程式:
- 雖然使用分析工具可以不需支付額外費用,但您的 Web 應用程式至少必須裝載於 Azure App Service Web Apps 功能的基本層中。
- 您只能將一個分析工具附加到每個 Web 應用程式。
下一步
了解如何在 Azure 服務上啟用分析工具:
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應