Exportação
Importante
O Visual Studio App Center está programado para ser desativado em 31 de março de 2025. Embora você possa continuar a usar o Visual Studio App Center até que ele seja totalmente desativado, há várias alternativas recomendadas para as quais você pode considerar a migração.
O App Center permite exportar continuamente todos os dados brutos do Analytics para o Azure. Você pode exportar dados do Analytics para o Armazenamento de Blobs e o Application Insights (Azure Monitor). Ao exportar os dados, você se beneficia de:
- Retenção de dados ilimitada
- Análise de uso detalhada
- Dashboard unificado
- Recursos avançados adicionais do Application Insights, como funis, retenção
O App Center exporta continuamente os dados do Analytics para o Application Insights a partir do momento em que você configura a exportação juntamente com dois dias de dados preenchidos novamente. Com o novo dashboard atualizado no Application Insights, os usuários do App Center podem obter uma exibição unificada da Análise de Aplicativo e Back-end em uma dashboard.
O App Center exporta continuamente os dados do Analytics para o Armazenamento de Blobs a partir do momento em que você configura a exportação junto com 28 dias de dados preenchidos novamente. Saiba mais sobre o Armazenamento de Blobs
Você também pode exportar dados para o Blob de Armazenamento do Azure Uso Geral v2. As contas de armazenamento para uso geral v2 são compatíveis com os recursos mais recentes do Armazenamento do Azure e incorporam todas as funcionalidades das contas de armazenamento de blobs e para uso geral v1.
Saiba mais sobre Uso Geral armazenamento v2Saiba mais sobre o Application Insights
Armazenamento de Blobs do Azure
Armazenamento de Blobs do Azure é um serviço para armazenar grandes quantidades de dados de objeto não estruturados, como texto ou dados binários, disponíveis em todo o mundo por meio de HTTP ou HTTPS. Você pode usar o Armazenamento de Blobs para expor dados publicamente ou armazenar dados de forma privada.
Os dados são exportados a cada minuto e uma nova subpasta é criada sempre. Os dados são armazenados no formato ano/mês/dia/hora/minuto (por exemplo, https://<blob-storage-account>.blob.core.windows.net/archive/2017/12/09/04/03/logs.v1.data
) por padrão quando o blob_path_format_kind
é definido WithoutAppId
como . Quando a config
propriedade é definida como WithAppId
, os dados são armazenados no formato appId/year/month/day/hour/minute , que prefixa o caminho padrão com o appID. Os dados levarão até 5 minutos para serem mostrados em Armazenamento de Blobs do Azure.
Os dados são divididos em dados de "Análise" (sessões, eventos), "Falhas", "Erros" e "Anexos". Saiba mais sobre como exportar dados diagnóstico
O conteúdo do arquivo blob é uma matriz JSON de logs de dispositivo cliente, que tem esta aparência para dados do 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
O Application Insights é um serviço de gerenciamento de desempenho de aplicativos (APM) que oferece funcionalidades de consulta, segmentação, filtragem e análise de uso nos dados de eventos do App Center. Ao adicionar o SDK do App Center ao seu aplicativo e exportar os dados para um recurso do Application Insights do tipo aplicativo do App Center, você terá acesso aos seguintes recursos:
- Análise do Application Insights. Use uma linguagem de consulta poderosa para analisar seus dados de evento brutos e criar visualizações. Você pode exportar os resultados de suas consultas para o Power BI ou Excel.
- Usuários, sessões e eventos. Saiba quantas pessoas estão usando cada página e recurso do seu aplicativo e, em seguida, segmentar por país, navegador ou outras propriedades para entender o porquê.
- Funis e fluxos de usuário. Entenda como os usuários navegam pelo aplicativo. Identificar gargalos. Descubra maneiras de aumentar as taxas de conversão e eliminar pontos de dor.
- Retenção. Descubra quantos usuários retornam para usar seu aplicativo. Descubra onde e por que eles abandonam.
- Workbooks. Crie pastas de trabalho interativas que combinem visualizações de análise de uso, consultas do Application Insights Analytics e texto para compartilhar insights sobre sua equipe.
Os campos do App Center são mapeados para o formato application insights. Aqui está a equivalência entre os campos mapeados:
Application Insights | App Center |
---|---|
timestamp | Hora do evento |
name | Nome do evento personalizado ou tipo de dados |
customDimensions | Isso inclui vários campos mostrados na tabela abaixo |
session_Id | Identificador de sessão exclusivamente |
user_Id | Identificador de instalação |
application_Version | Versão do aplicativo |
client_Type, client_Model | Modelo do Dispositivo |
client_OS | Tipo e versão do sistema operacional |
sdkVersion | Versão do SDK do App Center |
A tabela a seguir mostra o mapeamento de campo para o campo "customDimensions".
Application Insights | App Center |
---|---|
AppBuild | Número de build do aplicativo |
AppId | App Center App ID |
AppNamespace | Namespace do aplicativo |
CarrierCountry | País da operadora |
CarrierName | Tipo de operadora |
EventId | ID de Evento do App Center |
IngressTimestamp | Carimbo de data/hora de ingestão de log |
Local | Idioma do dispositivo |
MessageType | Tipo de evento (sessão, evento, ...) |
OsApiLevel | Nível de API do SO |
OsBuild | Número de build do sistema operacional |
OsName | Nome do SO |
OsVersion | Versão do SO |
Propriedades | Propriedades anexadas a um evento personalizado |
ScreenSize | Tamanho da tela do dispositivo |
SdkName | Nome do SDK do App Center |
SdkVersion | Versão do SDK do App Center |
TimeZoneOffset | Deslocamento de fuso horário |
UserId | Identificador de usuário personalizado (conjunto de desenvolvedores) |
WrapperRuntimeVersion | Versão de runtime do wrapper do SDK do App Center |
WrapperSdkName | Nome do wrapper do SDK do App Center |
WrapperSdkVersion | Versão do wrapper do SDK do App Center |
Uma consulta de IA de exemplo para recuperar eventos personalizados:
customEvents
| where name == "YourEventName"
| extend Properties = todynamic(tostring(customDimensions.Properties))
| extend YourPropertyName = Properties.YourPropertyName
Mais informações sobre o Application Insights e o App Center:
- Saiba mais sobre o Application Insights em geral
- Saiba mais sobre a integração com o App Center no blog de IA
- Saiba mais sobre melhores decisões por meio de análises melhores no blog do App Center
Pré-requisitos
Você deve ter uma Assinatura do Azure para usar Exportar; Se você não tiver uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
Vinculação de assinatura do Azure
Observação
Esta etapa só é necessária para Exportação Padrão; A Exportação Personalizada não requer uma assinatura do Azure.
A exportação padrão de dados de aplicativo do App Center para o Azure requer uma assinatura do Azure vinculada ao aplicativo do App Center. Adicionar a assinatura e vinculá-la a um aplicativo deve ser feito pelo proprietário do aplicativo (se o aplicativo não pertencer a uma organização) ou pelo administrador da organização.
Adicionando uma assinatura do Azure
- Aplicativo pertencente a uma organização: Se você for o administrador da organização, vá para a seção Gerenciar na organização à qual o aplicativo pertence.
- Aplicativo pertencente a um usuário: Se você for o proprietário do aplicativo, siga estas etapas.
- Faça logon no portal do App Center.
- Acesse as configurações do usuário.
- No Azure, clique em Adicionar assinatura
- Selecione uma assinatura existente do Azure ou crie uma nova.
Vinculando um aplicativo a uma assinatura do Azure
Depois de adicionar sua assinatura do Azure à conta de usuário ou organização, você precisará fornecer aos aplicativos acesso para que a assinatura possa ser usada nesse aplicativo. Ao fazer isso, você está permitindo que qualquer gerente/desenvolvedor nesse aplicativo use a assinatura para fins de exportação. Isso tem um custo associado cobrado em sua Assinatura do Azure.
Configurar Exportação
- No portal do App Center, escolha o Aplicativo.
- Vá para As Configurações do Aplicativo.
- Clique em Exportar e selecione a opção Nova Exportação .
- Selecione Armazenamento de Blobs ou Application Insights com base nas necessidades do aplicativo.
- Selecione o tipo de configuração desejado (padrão versus personalizado).
O App Center oferece duas maneiras de exportar seus dados: exportação padrão e exportação personalizada. A exportação padrão permite exportar os dados com uma experiência de um clique usando a assinatura do Azure vinculada ao aplicativo. A exportação personalizada fornecerá mais flexibilidade e as configurações serão personalizadas no Azure.
Exportação Padrão
A Exportação Padrão fornece uma experiência de um clique para exportar seus dados. Com essa opção, todos os recursos necessários são criados automaticamente no Azure.
Exportação Personalizada
A Exportação Personalizada permite que os usuários personalizem sua configuração de exportação no Azure.
Para Armazenamento de Blobs
- Entre no portal do Azure.
- Clique em Criar um recurso
- Pesquise conta de armazenamento em Pesquisar no Marketplace.
- Clique em Criar. Isso abre a página Criar conta de armazenamento.
- Selecione uma Assinatura do Azure.
- Escolha um grupo de recursos existente ou crie um novo. (Um grupo de recursos é um contêiner que contém recursos relacionados para uma solução do Azure)
- Para Tipos de conta, você verá a lista suspensa a seguir. Há três opções com suporte. Escolha o que é certo para você.
- Clique em Examinar + criar
- Depois que a validação for aprovada
- Clique em Criar
- Depois que a implantação for bem-sucedida, vá para o recurso
- Localizar chaves de acesso na guia Configurações
- Copie o cadeia de conexão e adicione-o às configurações personalizadas do App Center.
Para o Application Insights
- Entre no portal do Azure.
- Selecione Criar um recurso> Ferramentas > de Gerenciamento Application Insights.
- Uma caixa de configuração será exibida
- Defina o Tipo de Aplicativo como aplicativo do App Center.
- Copie a chave de instrumentação do portal do Azure e adicione-a às configurações personalizadas do App Center. Você encontrará a chave de instrumentação na página Visão geral no recurso application insights.
Para obter mais informações sobre exportação, consulte o guia de início rápido do Application Insights.
Exportando vários aplicativos para a mesma conta de armazenamento
Ao configurar a exportação para vários aplicativos, você deve criar ou atualizar uma configuração com o blob_path_format_kind
(parte do ExportBlobConfiguration
modelo) definido como WithAppId
, que prefixa o caminho de exportação com os respectivos appID.
O caminho para o blob é formatado da seguinte maneira:
- quando a enumeração é definida como
WithoutAppId=false
éyear/month/day/hour/minute
- quando a enumeração é definida como
WithAppId=true
éappId/year/month/day/hour/minute
A API de criação de configuração de exportação foi descrita acima. Para configurações existentes, aqui está a API de atualização parcial:
PATCH /v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}
As alterações levarão de 5 a 10 minutos para serem propagadas, e as entidades desse ponto em diante serão gravadas usando o novo formato de caminho.
Back-filling opt-out
Por padrão, uma nova configuração de exportação preencherá novamente dois últimos dias de dados para recursos de IA e 30 dias para o armazenamento de blobs. Há cenários em que o preenchimento de back-filling não é necessário; por exemplo, se isso resultar em substituição ou duplicação de dados. Nesse caso, defina backfill
a propriedade como false
ao criar uma nova configuração.
Escolhendo que tipo de dados exportar
Por padrão, uma nova configuração de exportação exporta somente dados do Analytics (eventos, sessões e assim por diante) Os dados relacionados ao diagnóstico podem ser exportados definindo Entities
a propriedade (export_entity
modelo) para uma combinação de errors
, crashes
e attachments
. A propriedade também permite que a exclusão de dados do Analytics seja exportada adicionando no_logs
valor à Entities
matriz.
Mecanismo de desabilitação automática
O App Center pode desabilitar automaticamente a configuração de exportação incorreta para evitar qualquer possível atraso em todo o pipeline de exportação. Por exemplo, o App Center lida com as falhas abaixo do Azure.
- A chave de instrumentação do Application Insights é inválida.
- O recurso de blob não pode ser autenticado ou o nome remoto não pode ser resolvido.
Observação
Se a exportação for habilitada novamente, o fluxo de dados continuará a partir desse momento sem o back-filling para evitar uma possível substituição ou duplicação de dados. Se você precisar preencher novamente os dados ausentes, precisará recriar a configuração de exportação. Os dados que vão para o Application Insights permanecem 48 horas e 30 dias para o Armazenamento de Blobs.
Você pode usar uma das SEGUINTEs APIs para marcar o status para executar uma ação de restauração.
GET /v0.1/apps/{owner_name}/{app_name}/export_configurations
GET /v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}
Você pode usar a API a seguir para habilitar sua configuração de exportação
POST /v0.1/apps/{owner_name}/{app_name}/export_configurations/{export_configuration_id}/enable
Preços
Para configurar Exportar, você precisará criar uma assinatura do Azure. A exportação dos dados tem um custo associado que dependerá do serviço do Azure para o qual você está exportando. Encontre os detalhes sobre os preços de cada serviço em: