내보내기
중요
Visual Studio App Center는 2025년 3월 31일에 사용 중지될 예정입니다. Visual Studio App Center가 완전히 사용 중지될 때까지 계속 사용할 수 있지만 마이그레이션을 고려할 수 있는 몇 가지 권장 대안이 있습니다.
App Center를 사용하면 모든 Analytics 원시 데이터를 Azure로 지속적으로 내보낼 수 있습니다. 분석 데이터를 Blob Storage 및 Application Insights(Azure Monitor)로 내보낼 수 있습니다. 데이터를 내보내면 다음과 같은 이점을 얻을 수 있습니다.
- 무제한 데이터 보존
- 자세한 사용 현황 분석
- 통합 dashboard
- 깔때기, 보존과 같은 Application Insights의 추가 풍부한 기능
App Center는 2일간의 백필 데이터와 함께 내보내기를 구성하는 순간부터 분석 데이터를 Application Insights로 지속적으로 내보냅니다. Application Insights의 새로운 업데이트된 dashboard 사용하여 App Center 사용자는 한 dashboard 애플리케이션 및 백 엔드 분석의 통합 보기를 얻을 수 있습니다.
App Center는 28일간의 백필 데이터와 함께 내보내기를 구성하는 순간부터 분석 데이터를 Blob Storage로 지속적으로 내보냅니다. Blob Storage에 대해 자세히 알아보기
Azure 범용 v2 Storage Blob으로 데이터를 내보낼 수도 있습니다. 범용 v2 스토리지 계정은 최신 Azure Storage 기능을 지원하고 모든 범용 v1의 기능 및 Blob Storage 계정을 통합합니다.
범용 v2 Storage에 대해자세히 알아보기 Application Insights에 대해 자세히 알아보기
Azure Blob Storage HTTP 또는 HTTPS를 통해 전 세계적으로 사용할 수 있는 텍스트 또는 이진 데이터와 같은 많은 양의 구조화되지 않은 개체 데이터를 저장하는 서비스입니다. Blob Storage를 사용하여 데이터를 공개적으로 노출하거나 데이터를 비공개로 저장할 수 있습니다.
데이터는 1분마다 내보내지고 매번 새 하위 폴더가 만들어집니다. 데이터는 이 로 설정된 경우 기본적으로 blob_path_format_kind
연도/월/일/시간/분 형식(예: https://<blob-storage-account>.blob.core.windows.net/archive/2017/12/09/04/03/logs.v1.data
)으로 WithoutAppId
저장됩니다. 속성이 로 config
설정 WithAppId
되면 데이터는 appID와 함께 기본 경로 접두사를 지정하는 appId/year/month/day/hour/minute 형식으로 저장됩니다. 데이터는 Azure Blob Storage 표시되는 데 최대 5분이 걸립니다.
데이터는 "분석" 데이터(세션, 이벤트), "충돌", "오류" 및 "첨부 파일"로 나뉩니다. 진단 데이터 내보내기에 대해 자세히 알아보기
Blob 파일의 내용은 분석 데이터에 대해 다음과 같은 클라이언트 디바이스 로그의 JSON 배열입니다.
[
{
"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"
}
]
Application Insights는 App Center 이벤트 데이터에 대한 쿼리, 세분화, 필터링 및 사용 현황 분석 기능을 제공하는 APM(애플리케이션 성능 관리) 서비스입니다. 앱에 App Center SDK를 추가하고 App Center 앱 유형 Application Insights 리소스로 데이터를 내보내면 다음 기능에 액세스할 수 있습니다.
- Application Insights Analytics. 강력한 쿼리 언어를 사용하여 원시 이벤트 데이터를 분석하고 시각화를 만듭니다. 쿼리 결과를 Power BI 또는 Excel로 내보낼 수 있습니다.
- 사용자, 세션 및 이벤트. 앱의 각 페이지와 기능을 사용하는 사용자 수를 알아봅니다. 그런 다음 국가, 브라우저 또는 기타 속성을 기준으로 분할하여 그 이유를 이해합니다.
- 깔때기 및사용자 흐름. 사용자가 앱을 탐색하는 방법을 이해합니다. 병목 상태를 확인합니다. 전환율을 높이고 문제점을 제거하는 방법을 찾아보세요.
- 보존. 앱을 사용하기 위해 돌아오는 사용자 수를 알아보세요. 그들이 어디로, 왜 중퇴하는지 알아보세요.
- 통합 문서. 사용 현황 분석 시각화, Application Insights Analytics 쿼리 및 텍스트를 결합하여 팀에 대한 인사이트를 공유하는 대화형 통합 문서를 만듭니다.
App Center 필드는 Application Insights 형식으로 매핑됩니다. 매핑된 필드 간의 동등성은 다음과 같습니다.
Application Insights | App Center |
---|---|
timestamp | 이벤트의 시간 |
name | 사용자 지정 이벤트 또는 데이터 형식의 이름 |
customDimensions | 여기에는 아래 표에 표시된 여러 필드가 포함됩니다. |
session_Id | 고유 세션 식별자 |
user_Id | 설치 식별자 |
application_Version | 애플리케이션 버전 |
client_Type, client_Model | 장치 모델 |
client_OS | OS 유형 및 버전 |
sdkVersion | App Center SDK 버전 |
아래 표에서는 "customDimensions" 필드에 대한 필드 매핑을 보여 줍니다.
Application Insights | App Center |
---|---|
AppBuild | 애플리케이션 빌드 번호 |
AppId | App Center App ID |
AppNamespace | 애플리케이션 네임스페이스 |
CarrierCountry | 통신 회사 국가 |
CarrierName | 이동 통신 사업자 유형 |
EventId | App Center 이벤트 ID |
IngressTimestamp | 로그 수집 타임스탬프 |
Locale | 디바이스 언어 |
MessageType | 이벤트 유형(세션, 이벤트, ...) |
OsApiLevel | OS API 수준 |
OsBuild | OS 빌드 번호 |
OsName | OS 이름 |
OsVersion | OS 버전 |
속성 | 사용자 지정 이벤트에 연결된 속성 |
ScreenSize | 디바이스의 화면 크기 |
SdkName | App Center SDK 이름 |
SdkVersion | App Center SDK 버전 |
TimeZoneOffset | 표준 시간대 오프셋 |
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에 대한 자세한 정보:
- 일반적으로 Application Insights 에 대해 알아보기
- AI 블로그에서 App Center와의 통합 에 대해 알아보기
- App Center에서 더 나은 분석을 통한 더 나은 의사 결정 블로그에 대해 알아보기
내보내기를 사용하려면 Azure 구독이 있어야 합니다. Azure 구독이 없는 경우 시작하기 전에 무료 Azure 계정을 만듭니다.
참고
이 단계는 표준 내보내기에서만 필요합니다. 사용자 지정 내보내기에서는 Azure 구독이 필요하지 않습니다.
App Center의 앱 데이터를 Azure로 표준 내보내려면 App Center 앱에 연결된 Azure 구독이 필요합니다. 구독을 추가하고 앱에 연결하려면 앱 소유자(앱이 organization 속하지 않는 경우) 또는 organization 관리자가 수행해야 합니다.
- organization 속한 앱: organization 관리자인 경우 앱이 속한 organization 아래의 관리 섹션으로 이동합니다.
- 사용자에 속하는 앱: 앱 소유자인 경우 다음 단계를 수행합니다.
- App Center 포털에 로그인합니다.
- 사용자 설정으로 이동합니다.
- Azure에서 구독 추가를 클릭합니다.
- 기존 Azure 구독을 선택하거나 새 구독을 만듭니다.
사용자 또는 조직 계정에 Azure 구독을 추가한 후에는 해당 앱 내에서 구독을 사용할 수 있도록 앱에 액세스 권한을 제공해야 합니다. 이렇게 하면 해당 앱의 모든 관리자/개발자가 내보내기 목적으로 구독을 사용할 수 있습니다. 여기에는 Azure 구독에 대해 부과되는 관련 비용이 있습니다.
- App Center 포털에서 앱을 선택합니다.
- 앱 설정으로 이동합니다.
- 내보내기를 클릭하고 새 내보내기 옵션을 선택합니다.
- 앱 요구 사항에 따라 Blob Storage 또는 Application Insights를 선택합니다.
- 원하는 구성 유형(표준 및 사용자 지정)을 선택합니다.
App Center는 데이터를 내보내는 두 가지 방법, 즉 표준 내보내 기 및 사용자 지정 내보내기를 제공합니다. 표준 내보내기를 사용하면 앱에 연결된 Azure 구독을 사용하여 원클릭 환경으로 데이터를 내보낼 수 있습니다. 사용자 지정 내보내기를 사용하면 더 많은 유연성이 제공되고 Azure에서 구성이 사용자 지정됩니다.
표준 내보내기를 사용하면 데이터를 내보낼 수 있는 원클릭 환경이 제공됩니다. 이 옵션을 사용하면 필요한 모든 리소스가 Azure에서 자동으로 만들어집니다.
사용자 지정 내보내기를 사용하면 사용자가 Azure에서 내보내기 구성을 사용자 지정할 수 있습니다.
Blob Storage의 경우
- Azure Portal에 로그인합니다.
- 새 리소스 만들기를 클릭합니다.
- Marketplace 검색에서 Storage 계정을 검색합니다.
- 만들기를 클릭합니다. 그러면 스토리지 계정 만들기 페이지가 열립니다.
- Azure 구독을 선택합니다.
- 기존 리소스 그룹을 선택하거나 새 리소스 그룹을 만듭니다. (리소스 그룹은 Azure 솔루션에 대한 관련 리소스를 보유하는 컨테이너입니다.)
- 계정 종류의 경우 다음 드롭다운이 표시됩니다. 지원되는 세 가지 옵션이 있습니다. 적합한 항목을 선택합니다.
- 검토 + 만들기를 클릭합니다.
- 유효성 검사가 통과되면
- 만들기를 클릭합니다.
- 배포에 성공하면 리소스로 이동합니다.
- 설정 탭에서 액세스 키 찾기
- 연결 문자열 복사하여 App Center 사용자 지정 구성에 추가합니다.
Application Insights의 경우
- Azure Portal에 로그인합니다.
- 리소스> 관리 도구 > Application Insights 만들기를 선택합니다.
- 구성 상자가 나타납니다.
- 애플리케이션 유형을App Center 애플리케이션으로 설정합니다.
- Azure Portal 계측 키를 복사하여 App Center 사용자 지정 구성에 추가합니다. Application Insights 리소스의 개요 페이지에서 계측 키를 찾을 수 있습니다.
내보내기에 대한 자세한 내용은 Application Insights 빠른 시작 가이드를 참조하세요.
여러 앱에 대한 내보내기를 구성할 때 (모델의 일부ExportBlobConfiguration
)가 로 설정된 WithAppId
구성 blob_path_format_kind
을 만들거나 업데이트해야 합니다. 이 구성은 각 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 리소스의 마지막 2일 데이터와 Blob Storage의 경우 30일을 다시 채웁니다. 백 필링이 필요하지 않은 시나리오가 있습니다. 예를 들어 이렇게 하면 데이터가 덮어쓰거나 중복될 수 있습니다. 이 경우 새 구성을 만들 때 속성을 로 false
설정합니다backfill
.
기본적으로 새 내보내기 구성은 분석 데이터만 내보내고(이벤트, 세션 등) 진단 관련 데이터는 속성(export_entity
모델)을 , crashes
및 attachments
의 errors
조합으로 설정 Entities
하여 내보낼 수 있습니다. 또한 속성을 사용하면 배열에 값을 추가하여 no_logs
Analytics 데이터를 내보내지 않도록 제외할 수 Entities
있습니다.
App Center는 전체 내보내기 파이프라인에서 가능한 지연을 방지하기 위해 잘못된 내보내기 구성을 자동으로 사용하지 않도록 설정할 수 있습니다. 예를 들어 App Center는 Azure의 아래 오류를 처리합니다.
- Application Insights 계측 키가 잘못되었습니다.
- Blob 리소스를 인증할 수 없거나 원격 이름을 확인할 수 없습니다.
참고
내보내기가 다시 사용하도록 설정된 경우 데이터 흐름은 가능한 데이터 재정의 또는 중복을 방지하기 위해 백 필링 없이 해당 순간부터 계속됩니다. 누락된 데이터를 다시 채워야 하는 경우 내보내기 구성을 다시 만들어야 합니다. Application Insights로 가는 데이터는 Blob Storage의 경우 48시간 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 서비스에 따라 달라지는 관련 비용이 있습니다. 각 서비스의 가격 책정에 대한 자세한 내용은 다음을 참조하세요.