共用方式為


出口

這很重要

Visual Studio App Center 於 2025 年 3 月 31 日淘汰,但分析和診斷功能除外,這些功能將持續支援到 2026 年 6 月 30 日。 瞭解更多資訊。

App Center 可讓您持續將所有分析原始數據匯出至 Azure。 您可以將分析數據匯出至 Blob 儲存空間Application Insights(Azure Monitor)。 藉由匯出數據,您可以受益於:

  • 無限制的數據保留
  • 詳細的使用分析
  • 整合儀錶板
  • Application Insights 的其他豐富功能,例如漏斗分析、使用者留存率分析

App Center 會在您設置匯出之後,持續不斷地將分析數據匯出至 Application Insights,同時包含兩天的補充數據。 透過 Application Insights 中新的更新儀錶板,App Center 使用者可以在單一儀錶板上取得應用程式與後端分析的統一檢視。

App Center 會在您設定匯出之後,持續將分析數據匯出至 Blob 儲存體,並包括過去 28 天的回填數據。 深入瞭解 Blob 儲存體

您也可以將數據匯出至 Azure 一般用途 v2 記憶體 Blob。 一般用途 v2 儲存體帳戶支援最新的 Azure 記憶體功能,並納入一般用途 v1 和 Blob 記憶體帳戶的所有功能。

深入瞭解一般用途 v2 儲存體深入瞭解應用程式見解

Azure Blob 儲存體

Azure Blob 記憶體是用來儲存大量非結構化對象資料的服務,例如文字或二進位數據,可透過 HTTP 或 HTTPS 在全球使用。 您可以使用 Blob 記憶體公開數據,或私下儲存數據。

數據會每分鐘導出一次,每次都會建立新的子資料夾。 當 設定為 https://<blob-storage-account>.blob.core.windows.net/archive/2017/12/09/04/03/logs.v1.data 時,資料預設會以blob_path_format_kind格式(例如 WithoutAppId)儲存。 config當 屬性設定為 WithAppId時,數據會以 appId/year/month/day/hour/minute 格式儲存,其前面會加上 appID 的默認路徑。 數據最多需要 5 分鐘的時間才會顯示在 Azure Blob 記憶體中。

數據分為「分析」數據(會話、事件)、「當機」、「錯誤」和「附件」。 深入瞭解如何匯出診斷數據

Azure Blob 記憶體中的數據視覺效果

Blob 檔案的內容是用戶端裝置記錄的 JSON 陣列,其外觀類似 Analytics 數據:

[
    {
        "AppId": "00001111-aaaa-2222-bbbb-3333cccc4444",
        "Timestamp": "2017-12-09T04:02:53.618Z",
        "InstallId": "e589a371-ea0c-4479-9a7b-9f834adec040",
        "MessageType": "EventLog",
        "IngressTimestamp": "2017-12-09T04:02:57.987Z",
        "MessageId": "980e21a0-0cbb-48ac-8820-28acf4beb00d",
        "EventId": "ad980536-e743-48a9-ab7e-cb043602d2c9",
        "EventName": "log_out",
        "CorrelationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
        "IsTestMessage": "False",
        "SdkVersion": "1.0",
        "Model": "PC",
        "OemName": "Samsung",
        "OsName": "Android",
        "OsVersion": "8.1.0",
        "OsApiLevel": "2",
        "Locale": "EN",
        "TimeZoneOffset": "PT2M",
        "ScreenSize": "320x240",
        "AppVersion": "1.1.0",
        "AppBuild": "1",
        "AppNamespace": "com.microsoft.test",
        "CarrierName": "AT&T",
        "CarrierCountry": "US",
        "CountryCode": "US",
        "WrapperSdkVersion": "1.0",
        "WrapperSdkName": "mobilecenter.xamarin","Properties": "{\"extra_00\":\"5bcacf3598ca44ebbbc99e4488cfc854\",\"extra_01\":\"2673e48867c74d51af8dc24c762a8b28\",\"extra_02\":\"5b76c801e5074cd3a13ea37253b94484\",\"extra_03\":\"c1e76aa252c947d4b4bcd4d1d96a7be6\",\"extra_04\":\"caea50034c4f441a963700fa3cf70d03\"}",
        "SessionId": "10df497a-4261-4995-b466-3fd77ac47395",
        "SdkName": "mobilecenter.android",
        "OsBuild": "2",
        "WrapperRuntimeVersion": "None",
        "LiveUpdateDeploymentKey": "stage",
        "LiveUpdatePackageHash": "dsadsdasd3211321233",
        "LiveUpdateReleaseLabel": "2.0"
    }
]

Azure 應用程式深入解析

Application Insights 是應用程式效能管理 (APM) 服務,可透過 App Center 事件數據提供查詢、分割、篩選和使用分析功能。 將 App Center SDK 新增至您的應用程式,並將資料匯出至 App Center 應用程式類型 Application Insights 資源,即可存取下列功能:

  • Application Insights 分析。 使用功能強大的查詢語言來分析原始事件數據並建立視覺效果。 您可以將查詢的結果匯出至 Power BIExcel
  • 使用者、工作階段和事件。 瞭解有多少人使用您應用程式的每個頁面和功能,然後依國家/地區、瀏覽器或其他屬性進行區隔,以瞭解原因。
  • 漏斗使用者流程。 瞭解使用者如何瀏覽您的應用程式。 識別瓶頸。 探索增加轉換率並消除痛點的方法。
  • 保留。 探索有多少使用者返回使用您的應用程式。 了解他們中途退出的位置和原因。
  • 活頁簿。 建立互動式活頁簿,結合使用分析視覺效果、Application Insights 分析查詢和文字,以分享小組的見解。

App Center 字段被映射到 Application Insights 格式。 以下是映射欄位之間的對應關係:

Application Insights 應用程式中心
時間戳記 事件的時間
名稱 自訂事件或數據類型的名稱
自訂維度 這包括下表所示的數個字段
session_Id 唯一會話標識碼
user_Id 安裝標識碼
應用程式版本 應用程式的版本
客戶類型、客戶模型 裝置型號
用戶端作業系統 (client_OS) OS 類型和版本
sdkVersion App Center SDK 版本

下表顯示「customDimensions」欄位的欄位映射。

Application Insights 應用程式中心
AppBuild 應用程式組建編號
AppId App Center 應用程式識別碼
AppNamespace 應用程式命名空間
運營商國家 運送國家
運輸商名稱 電信業者類型
EventId App Center 事件標識碼
IngressTimestamp 記錄擷取時間戳
地區設定 裝置語言
訊息類型 事件類型 (session, event, ...)
OsApiLevel OS API 層級
OsBuild OS 組建編號
OsName OS 名稱
OsVersion 操作系統版本
屬性 附加至自定義事件的屬性
螢幕尺寸 裝置的螢幕大小
SdkName App Center SDK 名稱
SdkVersion App Center SDK 版本
時區偏移 時區位移
UserId 自訂使用者識別碼 (開發人員集)
WrapperRuntimeVersion App Center SDK 包裝函式運行時間版本
WrapperSdkName App Center SDK 包裝函式名稱
WrapperSdkVersion App Center SDK 包裝函式版本

擷取自定義事件的範例 AI 查詢:

customEvents
    | where name == "YourEventName"
    | extend Properties = todynamic(tostring(customDimensions.Properties))
    | extend YourPropertyName = Properties.YourPropertyName

Application Insights 和 App Center 的詳細資訊:

先決條件

您必須有 Azure 訂用帳戶才能使用導出;如果您沒有 Azure 訂用帳戶,請在開始之前建立免費的 Azure 帳戶。

Azure 訂用帳戶連結

備註

只有標準匯出才需要此步驟;自定義導出不需要 Azure 訂用帳戶。

App Center 標準地將應用程式數據匯出至 Azure 需要 Azure 訂用帳戶連結到 App Center 應用程式。 新增訂用帳戶並將它連結至應用程式必須由應用程式擁有者完成(如果應用程式不屬於組織),或由組織的系統管理員完成。

新增 Azure 訂用帳戶

  • 屬於組織的應用程式: 如果您是組織管理員,請移至應用程式所屬組織底下的 [ 管理 ] 區段。
  • 屬於使用者的應用程式: 如果您是應用程式擁有者,請遵循下列步驟。
  1. 登入App Center入口網站。
  2. 移至用戶設定。
  3. 在 [Azure] 下,按兩下 [ 新增訂用帳戶]
  4. 選取現有的 Azure 訂用帳戶或建立新的訂用帳戶。

將應用程式連結至 Azure 訂用帳戶

將 Azure 訂用帳戶新增至使用者或組織帳戶之後,您必須提供應用程式存取權,讓訂用帳戶可在該應用程式內使用。 如此一來,您就允許該應用程式中的任何管理員/開發人員使用訂用帳戶進行匯出。 這會針對您的 Azure 訂用帳戶收取相關聯的成本。

設定匯出

  1. 在 App Center 入口網站上,選擇 [應用程式]。
  2. 移至 [應用程式設定]。
  3. 按兩下 [ 匯出 ],然後選取 [ 新增導出] 選項。
  4. 根據您的應用程式需求選取 Blob 儲存體或 Application Insights。
  5. 選取您想要的組態類型(標準與自定義)。

App Center 提供兩種方式來匯出您的數據: 標準匯出自定義導出。 標準匯出可讓您使用連結至應用程式的 Azure 訂用帳戶,使用單鍵體驗匯出數據。 自定義導出可提供您更多彈性,且將在 Azure 中自定義組態。

標準匯出

標準匯出提供導出數據的一鍵體驗。 使用此選項時,所有必要資源都會自動在 Azure 中建立。

自定義匯出

自定義導出可讓使用者在 Azure 中自定義其匯出組態。

針對 Blob 存儲

  1. 登入 Azure 入口網站
  2. 按一下建立新資源
  3. 在 Marketplace 搜尋 儲存體帳戶
  4. 按一下 [建立]。 這會開啟 [建立記憶體帳戶] 頁面。
  5. 選取 Azure 訂用帳戶。
  6. 選擇現有的資源群組或建立新群組。 (資源群組是保存 Azure 解決方案相關資源的容器)
  7. 針對 [帳戶類型],您會看到下列下拉式清單。 支援三個選項。 選擇適合您的內容。 支援的 Blob 記憶體帳戶
  8. 按兩下 [ 檢閱 + 建立]
  9. 一旦驗證過程通過
  10. 按一下 [建立]
  11. 部署成功之後,請移至資源
  12. 在 [設定 ] 索引標籤 中找出存取金鑰
  13. 複製 連接字串 ,並將其新增至您的 App Center 自定義組態。

在 App Center 中新增連接字串

針對 Application Insights

  1. 登入 Azure 入口網站
  2. 選取 建立資源>管理工具>Application Insights。
  3. 組態方塊隨即出現
  4. [應用程式類型 ] 設定為 App Center 應用程式
  5. 從 Azure 入口網站複製 檢測金鑰 ,並將其新增至您的 App Center 自定義組態。 您可以在 Application Insights 資源的 [概觀] 頁面中找到檢測密鑰。

在 App Center 中新增檢測金鑰

如需匯出的詳細資訊,請參閱 Application Insights 快速入門指南

將多個應用程式導出至相同的記憶體帳戶

當您為多個應用程式配置匯出時,應創建或更新包含 blob_path_format_kind 模型的組態 ExportBlobConfiguration,並將 WithAppId 設置為該模型,使匯出路徑前綴上相應的 appID。

Blob 的路徑格式如下:

  • 當列舉被設定為 WithoutAppId=false 時,為 year/month/day/hour/minute
  • 當列舉被設定為 WithAppId=true 時,為 appId/year/month/day/hour/minute

過去已經概述了匯出設定建立 API。 針對現有的組態,以下是 部分更新 API

PATCH /v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}

變更大約需要 5-10 分鐘才能完全生效,從那時起,實體將會使用新的路徑格式被撰寫。

填補選擇退出者的空缺

預設情況下,新的匯出配置會為 AI 資源回填最近兩天的數據,對 Blob 儲存空間則回填30天的數據。 不需要回填的情況下,例如,如果這樣做以致於覆寫或複製數據。 在這裡情況下,在建立新組態時,將屬性設定 backfillfalse

選擇要匯出的數據種類

根據預設,新的導出組態只會匯出 Analytics 數據(例如事件、會話等)。診斷相關數據可以透過Entities屬性(export_entity模型)設定為與errorscrashesattachments的組合來匯出。 屬性也允許藉由將no_logs值排除在Entities陣列之外,來排除Analytics數據的匯出。

自動停用機制

App Center 可能會自動停用不正確的導出組態,以防止整個導出管線中的任何可能延遲。 例如,App Center 會處理來自 Azure 的下列失敗。

  • Application Insights 檢測密鑰無效。
  • 無法驗證 Blob 資源,或無法解析遠端名稱。

備註

如果重新啟用匯出,資料流將從那一刻開始繼續,而不會重新填入,以避免可能的資料覆蓋或重複。 如果您需要重新填入遺漏的數據,則必須重新建立導出組態。 移至 Application Insights 的資料會保留 48 小時,而在 Blob 存儲中則保留 30 天。

您可以使用下列其中一個 API 來檢查狀態,以便採取還原動作。

GET  /v0.1​/apps​/{owner_name}​/{app_name}​/export_configurations
GET  /v0.1​/apps​/{owner_name}​/{app_name}​/export_configurations​/{export_configuration_id}

您可以使用下列 API 來啟用匯出組態

POST /v0.1​/apps​/{owner_name}​/{app_name}​/export_configurations​/{export_configuration_id}/enable

定價

若要設定導出,您必須建立 Azure 訂用帳戶。 匯出數據的相關成本將取決於您要匯出的 Azure 服務。 在下列位置尋找每個服務定價的詳細資料:

Application Insights 定價

Blob 存儲定價