Suporte do Windows
Importante
O Visual Studio App Center está programado para aposentadoria 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.
Atualmente, o App Center oferece suporte a diagnósticos para aplicativos UWP, WPF e WinForms. Esta seção explica a nova experiência para aplicativos UWP como parte da versão 2.5.0 SDK. Para obter mais informações sobre aplicativos WPF e WinForms, consulte Recursos de diagnóstico e WPF/WinForms SDK.
Plataforma Universal do Windows
O App Center oferece suporte ao conjunto completo de recursos de diagnóstico para aplicativos UWP de sideload e da Windows Store usando o SDK 2.5.0 ou versões posteriores. Para habilitar o diagnóstico do App Center para seu aplicativo UWP, siga a documentação do SDK UWP do App Center para integrar o SDK do App Center. Você pode saber mais sobre o conjunto completo de recursos na documentação de recursos de diagnóstico.
Nova experiência de diagnóstico
Com a versão 2.5.0 SDK em outubro de 2019, o App Center lançou uma nova experiência de diagnóstico. Esta seção detalha as melhorias e a experiência de transição com a nova versão.
Que melhorias foram feitas?
A experiência de diagnóstico nova e aprimorada inclui as seguintes adições:
- Uma experiência de simbologia completa que permite carregar símbolos no App Center. Consulte a seção de simbologia abaixo para obter mais detalhes.
- Suporte para exceções manipuladas
- Número de usuários afetados por falha ou grupo de erros
- Capacidade de adicionar anotações por falha ou grupo de erros
- Capacidade de marcar grupos de falhas e erros como abertos, fechados ou ignorados
- Capacidade de baixar relatórios de falhas e erros
- Capacidade de anexar, visualizar e baixar um anexo binário e um anexo de texto aos seus relatórios de falhas
- Detalhes do relatório de falhas e erros por instância de falha, incluindo quando o aplicativo foi iniciado, quando ele travou e qual país/região e idioma o dispositivo usou
Você pode saber mais sobre cada recurso na documentação de diagnóstico do App Center.
Qual é a experiência de transição?
Depois de atualizar para o SDK UWP do App Center Versão 2.5.0, você verá dados de falhas e erros entrando no portal de Diagnóstico do App Center em uma interface do usuário nova e aprimorada. Para dados de falha e erro exibidos na nova interface do usuário de diagnóstico, você precisa usar as APIs listadas na seção de erros. Saiba mais sobre como as APIs de falhas antigas são mapeadas para as novas APIs de erros na documentação de transição de API.
Simbolização
Os relatórios de falha da UWP mostram o rastreamento de pilha para o thread que causou a falha. Quando o aplicativo está usando o .NET Native (normalmente em compilações de versão), o rastreamento de pilha pode conter endereços de memória em vez de nomes de classe, métodos, nomes de arquivo e números de linha necessários para ler e entender as falhas.
Falhas não simbólicas
Falhas não simbólicas são exibidas na seção Diagnóstico do App Center para que você possa exibir alguns detalhes antes mesmo de carregar símbolos. Os símbolos ausentes dessas falhas serão mostrados na guia "não simbolizado". Se os símbolos ausentes forem carregados, o grupo de falhas não simbolizadas será substituído por um grupo de falhas simbólicas.
Carregando símbolos
Para obter os endereços de memória traduzidos, você precisa carregar um .appxsym
arquivo no App Center, que contém todas as informações necessárias para a simbolização.
Gerar os símbolos localmente
Para obter um .appxsym
arquivo, você deve criar um pacote de aplicativos conforme descrito aqui. Depois de criar o pacote, você encontrará o arquivo de símbolos como um .appxsym
arquivo dentro da pasta do pacote de aplicativos.
Símbolos para aplicativos criados no App Center Build
Os serviços de Criação e Distribuição do App Center podem gerar automaticamente um arquivo de símbolo válido e carregar no serviço de Diagnóstico. Se você usar o App Center para criar e distribuir automaticamente seu aplicativo para seus usuários finais, não precisará obter e carregar manualmente os arquivos de símbolo no App Center.
Símbolos para aplicativos publicados na Microsoft Store
Quando você publica seu aplicativo no armazenamento, a compilação nativa do .NET acontece no lado do servidor. Então, você precisa baixar os símbolos do Partner Center.
- Localize seu aplicativo na lista e clique nele.
- Expanda o menu Gerenciamento de produtos no painel esquerdo.
- Clique em Gerenciar pacotes.
- Clique em Mostrar pacotes no canto superior direito para o Envio (versão) para o qual você deseja símbolos.
- Localize o pacote para a versão para a qual você precisa de símbolos e clique em links para todas as arquiteturas suportadas para baixar todos os símbolos (como o link Baixar arquivo de símbolo do Windows 10 (x64) ).
Observação
Seu aplicativo deve declarar uma dependência de qualquer versão do .NET Native para gerar símbolos de depuração.
Esta declaração deve ser incluída na <Dependencies>
seção do seu AppxManifest.xml
. Exemplo:
<PackageDependency Name="Microsoft.NET.Native.Framework.2.2" MinVersion="2.2.29512.0" Publisher="CN=Microsoft Corporation, 0=Microsoft Corporation, L=Redmond, S=Washington, C=US"/>
<PackageDependency Name="Microsoft.NET.Native.Runtime.2.2" MinVersion="2 2.28604.0" Publisher="CN=Microsoft Corporation, 0=Microsoft Corporation, L=Redmond, S=Washington, C=US"/>
App Center Portal
- Faça logon no App Center e selecione seu aplicativo.
- No menu esquerdo, navegue até a seção Diagnóstico e selecione Símbolos.
- No canto superior direito, clique em Carregar símbolos e carregue o arquivo.
- Depois que os símbolos forem indexados pelo App Center, as falhas serão simbolizadas para você.
App Center API
O processo para carregar símbolos por meio da API envolve uma série de três chamadas de API: uma para alocar espaço em nosso back-end, uma para carregar o arquivo e outra para atualizar o status do upload. O corpo da primeira chamada de API deve ser definido symbol_type
como UWP
.
- Dispare uma
POST
solicitação para a API symbol_uploads. Esta chamada aloca espaço em nosso back-end para seu arquivo e retorna umasymbol_upload_id
e umaupload_url
propriedade.
curl -X POST 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{JSON BODY}'
- Usando a
upload_url
propriedade retornada da primeira etapa, faça umaPUT
solicitação com o cabeçalho:"x-ms-blob-type: BlockBlob"
e forneça o local do arquivo no disco. Essa chamada carrega o arquivo em nossas contas de armazenamento de back-end. Saiba mais sobre cabeçalhos de solicitação de Blob PUT .
curl -X PUT '{upload_url}' \
-H 'x-ms-blob-type: BlockBlob' \
--upload-file '{path to file}'
- Faça uma
PATCH
solicitação para a API do symbol_uploads usando asymbol_upload_id
propriedade retornada da primeira etapa. No corpo da solicitação, especifique se deseja definir o status do carregamento comocommitted
(concluído com êxito) o processo de carregamento ouaborted
(concluído sem êxito).
curl -X PATCH 'https://api.appcenter.ms/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}' \
-H 'accept: application/json' \
-H 'X-API-Token: {API TOKEN}' \
-H 'Content-Type: application/json' \
-d '{ "status": "committed" }'
Observação
A API de carregamento de símbolos não funciona para arquivos maiores que 256MB. Use a CLI do App Center para carregar esses arquivos. Você pode instalar a CLI do App Center seguindo as instruções em nosso repositório da CLI do App Center.
App Center CLI
Você também pode usar a CLI para carregar arquivos de símbolos:
appcenter crashes upload-symbols --appxsym {symbol file}
Ignorando símbolos
Quando o App Center não tem todos os arquivos de símbolos para simbolizar totalmente os relatórios de falhas, as falhas são listadas na guia Não simbolizado . Os símbolos necessários são carregados a partir desta página se você tiver acesso a eles.
Se não conseguir carregar os símbolos, pode marcá-los como Ignorados selecionando linhas na tabela e clicando no botão Ignorar versões . Esse botão diz ao App Center para processar as falhas e simbolizá-las da forma mais completa possível com os símbolos no arquivo. Depois de terminarem o processamento, eles aparecerão na guia Falhas parcialmente simbolizados. Novas falhas que também dependem desses mesmos IDs de símbolo marcados como ignorados ignorarão a guia Não simbolizado à medida que entrarem e fluírem pelo sistema.
WinRT, Silverlight e outras plataformas
O App Center não oferece suporte a nenhuma outra plataforma Windows além de UWP, WPF e WinForms. Se você tiver um aplicativo do Windows com falhas nativas do C++, poderá carregar essas falhas no App Center por meio da API de falhas de carregamento.