共用方式為


建立及設定 Application Insights 資源

這很重要

本文適用於 工作區型 Application Insights 資源。 傳統 Application Insights 資源已淘汰。 轉換至工作區型 Application Insights 以利用新功能。

Application InsightsLog Analytics 整合,並將遙測數據傳送至常見的 Log Analytics 工作區。 此設定提供對 Log Analytics 功能的完整存取權,將記錄合併到一個位置,並允許統一的 Azure 角色型存取控制,進而消除進行跨應用程式/工作區查詢的需要。

增強的功能包括:

本文說明如何建立及設定Application Insights資源。 除了 Application Insights 資源本身,您還可以新增各種設定,例如設定 每日 上限和 定價方案。 您也可以建立 可用性測試、設定 計量警示,以及使用 Azure Resource Manager 將程式自動化。

備註

工作區型 Application Insights 資源的資料內嵌和保留會透過資料所在的 Log Analytics 工作區來計費。 若要深入瞭解計費,請參閱 Azure 監視器記錄定價詳細數據

先決條件

  • 有效的 Azure 訂用帳戶。
  • 建立資源所需的許可權。

其他需求

沒有其他需求。

建立 Application Insights 資源

  1. 登入 Azure 入口網站
  2. 選擇 "建立資源"。
  3. 開啟 [監視與診斷] 類別,然後選取 [Application Insights]。
  4. 輸入所有相關信息,然後 檢閱 + 建立 Application Insights 資源。

顯示 Application Insights 資源的螢幕快照。

附註

如果您在資源建立期間未連線到現有的Log Analytics工作區,系統會自動建立新的Log Analytics資源與Application Insights 資源。

建立資源之後,您可以在 [Application Insights 概 觀] 窗格中找到對應的工作區資訊。

顯示工作區名稱的螢幕擷取畫面。

選取藍色連結文字,移至相關聯的 Log Analytics 工作區,您可以在其中利用新的整合工作區查詢環境。

附註

我們仍會為您的 Application Insights 傳統資源查詢、活頁簿和記錄型警示提供完整的回溯相容性。 若要查詢或檢視新的工作區型資料表結構或結構描述,您必須先移至 Log Analytics 工作區。 選取 [Application Insights] 窗格中的 [記錄 (分析)],可讓您存取傳統 Application Insights 查詢體驗。

設定監視

建立 Application Insights 資源之後,您可以設定監視。

取得連接字串

連接字串可識別您想要與遙測資料建立關聯的資源。 您也可以將其用來修改您資源將用作遙測目的地的端點。 您必須複製連接字串,並將其新增至應用程式的程式碼或新增至環境變數。

若要取得 Application Insights 資源的連接字串:

  1. 在 Azure 入口網站中開啟 Application Insights 資源。
  2. 在 [基本資訊] 區段中的 [概觀] 窗格中,尋找 [連接字串]。
  3. 如果您將滑鼠停留在連接字串上方,則會出現一個圖示,可讓您將它複製到剪貼簿。

使用 OpenTelemetry 的應用程式監視

若要使用 OpenTelemetry 進行應用程式監視,您可以安裝適當的 Azure 監視器 OpenTelemetry Distro,並將連接字串指向您新建立的資源。

如需如何使用 OpenTelemetry 設定應用程式監視的資訊,請參閱語言專屬的下列檔:

附註

針對以瀏覽器為目標的 Web 應用程式,我們建議使用 Application Insights JavaScript SDK

自動檢測

針對 Azure FunctionsAzure App Service 等監視服務,您可以先建立 Application Insights 資源,然後在啟用監視時指向它。 或者,您可以在啟用程序期間建立新的 Application Insights 資源。

設定 Application Insights 資源

修改相關聯的工作區

建立 Application Insights 資源之後,您可以修改相關聯的 Log Analytics 工作區。

在您的 Application Insights 資源中,選取 [屬性>變更工作區>Log Analytics 工作區]。

匯出遙測

工作區型資源不支援傳統的連續匯出功能。 請改用 診斷設定

附註

診斷設定匯出可能會增加成本。 如需詳細資訊,請參閱<從 Application Insights 匯出遙測> (英文)。 如需此功能的定價資訊,請參閱 Azure 監視器定價頁面。 開始計費之前,會傳送通知。 如果您在通知期間之後繼續使用遙測資料匯出,將會以適用的費率計費。

在您的 Application Insights 資源中,選取 [ 診斷設定>][新增診斷設定]。

您可以選取要封存到記憶體帳戶的所有資料表或資料表子集。 您也可以串流至事件中樞

設定資料保留

您可以在相關聯的 Log Analytics 工作區中設定 Application Insights 資源的數據保留期。

如需詳細資訊,請參閱 設定分析數據表的預設互動式保留期間

設定每日上限

每日上限必須針對Application Insights和基礎Log Analytics工作區獨立設定。 有效的每日上限是兩個設定的最小值。

若要瞭解如何在 Azure 入口網站中設定 每日上限,請參閱在 Log Analytics 工作區上設定每日上限

設定定價方案

您可以在相關聯的 Log Analytics 工作區中設定 Application Insights 資源的定價方案。 如需可用定價方案的詳細資訊,請參閱 Azure 監視器記錄成本計算和選項

附註

如果您在 Application Insights 中看到非預期的費用或高成本,本指南可協助您。 其中涵蓋常見的原因,例如高遙測量、資料擷取尖峰,以及取樣設定錯誤。 如果您要針對成本尖峰、遙測量、取樣無法運作、資料上限、高擷取量或非預期計費等相關問題進行疑難排解,此方式特別實用。 若要開始,請參閱 針對 Application Insights 中的高數據引入進行疑難排解

若要瞭解如何在 Azure 入口網站中設定定價方案,請參閱 Application Insights 計費

停用IP遮罩

根據預設,Application Insights 不會儲存IP位址。 若要瞭解如何停用IP遮罩,請參閱 地理位置和IP位址處理

建立其他資源

建立可用性測試

若要瞭解如何在 Azure 入口網站中建立可用性測試,請參閱 Application Insights 可用性測試

新增度量警示

小提示

每個 Application Insights 資源都隨附現成可用的計量。 如果個別元件會回報給相同的 Application Insights 資源,則針對這些計量發出警示可能沒有意義。

若要瞭解如何在 Azure 入口網站中建立計量警示,請參閱 教學課程:建立 Azure 資源的計量警示

若要自動建立計量警示,請參閱計量警示範本文章

建立更多 Application Insights 資源

我應該部署多少 Application Insights 資源?

當您在開發下一版 Web 應用程式時,您不會想看到新版與已發行版本的 Application Insights 遙測混合在一起。

為了避免混淆,請將不同開發階段的遙測,以個別的連接字串傳送到個別的 Application Insights 資源。

如果您的系統是 Azure 雲端服務的執行個體,則會有另一種設定個別連接字串的方法

使用單一 Application Insights 資源的時機

使用單一 Application Insights 資源以:

  • 簡化部署在一起之應用程式的 DevOps/ITOps 管理,通常是由同一個小組開發及管理。
  • 預設會在儀表板中集中處理關鍵效能指標,例如回應時間和失敗率。 視需要在計量總管中依角色名稱區隔。
  • 當應用程式元件之間不需要不同的 Azure 角色型存取控制管理時。
  • 當相同的計量警示準則、連續匯出和跨元件計費/配額管理都足夠時。
  • 當 API 金鑰可以平等存取所有元件的資料,且 10 個 API 金鑰符合所有元件的需求時。
  • 當相同的智慧偵測和工作項目整合設定適用於所有角色時。

附註

如果您要合併多個 Application Insights 資源,您可以將現有應用程式元件指向新的合併 Application Insights 資源。 儲存在您舊資源的遙測不會傳輸到新的資源。 只有在新資源中有足夠的遙測資料以確保業務持續性時,才刪除舊資源。

其他考量

若要啟用入口網站體驗,請新增自訂程式碼,將有意義的值指派給 Cloud_RoleName 屬性。 如果沒有這些值,入口網站功能就無法運作。

對於 Azure Service Fabric 應用程式和經典雲端服務,SDK 會透過讀取 Azure 角色環境來自動設定服務。 針對其他應用程式類型,您通常需要明確設定它。

即時計量無法依角色名稱分割資料。

版本和版次追蹤

當您發佈新版本的應用程式時,您想要能夠將遙測與不同的組建分開。 您可以設定 [應用程式版本] 屬性,以便篩選 搜尋計量總管 結果。

設定 [應用程式版本] 屬性有幾種不同的方法。

  • 選項 1: 直接設定版本

    將這一行 telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version; 新增至應用程式的初始化程序代碼。

    為了確保所有 TelemetryClient 實例都一致地設定,請將該行包裝在 遙測初始化器中。

  • 選項 2: 在 中 BuildInfo.config 設定版本(僅限 ASP.NET)

    Application Insights Web 模組會從 BuildLabel 節點挑選版本。 在您的專案中包含此檔案,而且記得要在方案總管中設定 [永遠複製] 屬性。

    <?xml version="1.0" encoding="utf-8"?>
    <DeploymentEvent xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/DeploymentEvent/2013/06">
      <ProjectName>AppVersionExpt</ProjectName>
      <Build type="MSBuild">
        <MSBuild>
          <BuildLabel kind="label">1.0.0.2</BuildLabel>
        </MSBuild>
      </Build>
    </DeploymentEvent>
    
    

    在Microsoft組建引擎中自動產生 BuildInfo.config 。 將下列幾行新增至您的 .csproj 檔案:

    <PropertyGroup>
      <GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
      <IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
    </PropertyGroup>
    

    此步驟會產生一個名為 yourProjectName.BuildInfo.config 的檔案。 發佈程序會將這個檔案重新命名為 BuildInfo.config

    當您使用 Visual Studio 組建時,組建標籤會包含預留位置 (*AutoGen_...*)。 使用 Microsoft 組建引擎建置時,佔位元元會填入正確的版本號碼。

    若要允許 Microsoft Build Engine 產生版本號碼,請在 1.0.* 中設定類似 AssemblyReference.cs 的版本。

版本註釋

如果您使用 Azure DevOps,您可以取得註解標記 (每當發行新版本時,此標記就會新增至您的圖表)。

自動化資源建立過程

您可以使用 Bicep 或 JSON 範本搭配 Azure Resource Manager 來自動化資源建立程式。 您可以將數個資源封裝在一起,以在一個部署中加以建立。 例如,您可以使用可用性測試、計量警示和診斷設定來建立 Application Insights 資源,以將遙測傳送至 Azure 記憶體帳戶。

在 Azure 入口網站中產生範本

您可以從現有的資源產生範本。

僅限 Application Insights

  1. 移至 Azure 入口網站中的 Application Insights 資源。
  2. 在左側導覽列的 [自動化] 底下開啟 [導出] 範本
  3. (選擇性):若要使用您自己的參數,請取消核取 [包含參數]。
  4. 下載 範本檔案,或直接在 Azure 入口網站中 加以部署

多個資源

  1. 移至 Application Insights 資源的資源群組。
  2. 在 [ 概觀] 窗格中,標示您想要包含在範本中的所有資源,然後選取頂端導覽列中的 [導出範本 ]。
  3. (選擇性):若要使用您自己的參數,請取消核取 [包含參數]。
  4. 下載 範本檔案,或直接在 Azure 入口網站中 加以部署

從頭開始建立範本

若要瞭解如何從頭開始建立 ARM 範本,請流覽 ARM 範本檔 ,其中包含 建立範本新增資源新增參數等教學課程。

您可以在 Azure 資源參考檔中找到 Application Insights可用性測試計量警示診斷設定和其他資源的可用屬性,請參閱參考>監視器>深入解析節點底下的 Azure 資源參考檔。

小提示

您也可以使用快速入門範本,這些範本適用於本節中連結的每個 Azure 資源參考文件頁面底部。 若要瞭解如何使用範本,請瀏覽 教學課程:使用 Azure 快速入門範本

常見問題集

本節提供常見問題的答案。

如何將 Application Insights 資源移至新區域?

不支援在區域之間傳輸現有的 Application Insights 資源,而且您無法將歷程記錄資料遷移至新區域。 因應措施包括:

  • 在所需的區域中建立新的 Application Insights 資源。
  • 在新的資源中重新創建原始資源中的任何獨特自訂設置。
  • 使用新區域資源的連接字串更新您的應用程式。
  • 測試以確保所有專案都如預期般運作,並搭配新的 Application Insights 資源使用。
  • 決定要保留還是刪除原始的 Application Insights 資源。 刪除傳統資源表示遺失所有歷程記錄數據。 如果資源是工作區型資源,則資料會保留在 Log Analytics 中,以便在保留期間到期之前存取歷程記錄資料。

在新區域中,通常需要手動重新建立或更新資源的獨特自訂化項目,包括但不限於:

  • 重新建立自訂儀表板和活頁簿。
  • 重新建立或更新任何自訂記錄/計量警示的範圍。
  • 重新建立可用性警示。
  • 重新建立您的使用者存取新資源所需的自訂 Azure 角色型存取控制。
  • 複寫牽涉到內嵌取樣、資料保留、每日上限和自訂計量的設定。 這些設定會透過使用者和預估成本窗格控制。
  • 需要 API 金鑰的任何整合,例如版本註釋即時計量安全控制通道。 您必須產生新的 API 金鑰,並更新相關聯的整合。
  • 必須重新設定舊版資源中的持續匯出功能。
  • 以工作區為基礎的資源中的診斷設定必須重新設定。

我可以在 Azure Resource Manager 部署中使用 `providers('Microsoft.Insights', 'components').apiVersions[0]` 嗎?

我們不建議使用此方法來填入 API 版本。 最新版本可代表其中可能包含中斷性變更的預覽版本。 即使使用較新的非預覽版本,API 版本也不一定與現有範本回溯相容。 在某些情況下,API 版本可能無法供所有訂用帳戶使用。

下一步