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.

Saiba mais sobre linhas do tempo e alternativas de suporte.

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 WithoutAppIdcomo . 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

Visualização de dados em Armazenamento de Blobs do Azure

O conteúdo do arquivo blob é uma matriz JSON de logs de dispositivo cliente, que tem esta aparência para dados do Analytics:

[
    {
        "AppId": "046d56b8-ea26-4653-97ba-12b8f99c3ef5",
        "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": "83a2daa9-e5b4-4082-ba4a-ce34b95ab859",
        "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:

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.
  1. Faça logon no portal do App Center.
  2. Acesse as configurações do usuário.
  3. No Azure, clique em Adicionar assinatura
  4. 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

  1. No portal do App Center, escolha o Aplicativo.
  2. Vá para As Configurações do Aplicativo.
  3. Clique em Exportar e selecione a opção Nova Exportação .
  4. Selecione Armazenamento de Blobs ou Application Insights com base nas necessidades do aplicativo.
  5. 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

  1. Entre no portal do Azure.
  2. Clique em Criar um recurso
  3. Pesquise conta de armazenamento em Pesquisar no Marketplace.
  4. Clique em Criar. Isso abre a página Criar conta de armazenamento.
  5. Selecione uma Assinatura do Azure.
  6. 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)
  7. Para Tipos de conta, você verá a lista suspensa a seguir. Há três opções com suporte. Escolha o que é certo para você. Contas de Armazenamento de Blobs com suporte
  8. Clique em Examinar + criar
  9. Depois que a validação for aprovada
  10. Clique em Criar
  11. Depois que a implantação for bem-sucedida, vá para o recurso
  12. Localizar chaves de acesso na guia Configurações
  13. Copie o cadeia de conexão e adicione-o às configurações personalizadas do App Center.

Adicionar o cadeia de conexão no App Center

Para o Application Insights

  1. Entre no portal do Azure.
  2. Selecione Criar um recurso> Ferramentas > de Gerenciamento Application Insights.
  3. Uma caixa de configuração será exibida
  4. Defina o Tipo de Aplicativo como aplicativo do App Center.
  5. 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.

Adicionar a chave de instrumentação no App Center

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, crashese 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:

Preços do Application Insights

Preços do Armazenamento de Blobs