Obter dados de relatório de erros para seu aplicativo
Use esse método na API de análise da Microsoft Store para obter dados de relatório de erros agregados para seu aplicativo no formato JSON para um determinado intervalo de datas e outros filtros opcionais. Esse método só pode recuperar erros ocorridos nos últimos 30 dias. Essas informações também estão disponíveis na seção Falhas do Relatório de integridade na Central de Parceiros.
Você pode recuperar informações de erro adicionais usando os métodos obter detalhes do erro, obter rastreamento de pilha e baixar arquivo CAB.
Pré-requisitos
Para usar esse método, primeiro você precisa fazer o seguinte:
- Se você ainda não fez isso, conclua todos os pré-requisitos da API de análise da Microsoft Store.
- Obter um token de acesso do Azure AD a ser usado no cabeçalho de solicitação para esse método. Depois de obter um token de acesso, você terá 60 minutos para usá-lo antes que ele expire. Depois que o token expirar, você poderá obter um novo.
Solicitação
Sintaxe de solicitação
Método | URI de solicitação |
---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/analytics/failurehits |
Cabeçalho da solicitação
Cabeçalho | Tipo | Descrição |
---|---|---|
Autorização | string | Obrigatório. O token de acesso do Azure AD no Token<de portador> do formulário. |
Parâmetros de solicitação
Parâmetro | Tipo | Descrição | Necessário |
---|---|---|---|
applicationId | string | A ID da Store do aplicativo cujos dados de relatório de erros você deseja recuperar. O ID da Store está disponível na página de identidade do aplicativo na Central de Parceiros. Um exemplo de ID da Store é 9WZDNCRFJ3Q8. | Sim |
data de início | date | A data de início no intervalo de datas dos dados de relatório de erros a serem recuperados. O padrão é a data atual. Se aggregationLevel for dia, semana ou mês, esse parâmetro deverá especificar uma data no formato mm/dd/yyyy . Se aggregationLevel for hora, esse parâmetro poderá especificar uma data no formato mm/dd/yyyy ou uma data e hora no formato yyyy-mm-dd hh:mm:ss .Observação: Este método só pode recuperar erros ocorridos nos últimos 30 dias. |
Não |
data de término | date | A data de término no intervalo de datas dos dados de relatório de erros a serem recuperados. O padrão é a data atual. Se aggregationLevel for dia, semana ou mês, esse parâmetro deverá especificar uma data no formato mm/dd/yyyy . Se aggregationLevel for hora, esse parâmetro poderá especificar uma data no formato mm/dd/yyyy ou uma data e hora no formato yyyy-mm-dd hh:mm:ss . |
Não |
top | int | O número de linhas de dados a serem retornados na solicitação. O valor máximo e o valor padrão se não especificado for 10000. Se houver mais linhas na consulta, o corpo da resposta incluirá um próximo link que você pode usar para solicitar a próxima página de dados. | Não |
skip | int | O número de linhas a serem ignoradas na consulta. Use esse parâmetro para percorrer grandes conjuntos de dados. Por exemplo, top=10000 e skip=0 recupera as primeiras 10000 linhas de dados, top=10000 e skip=10000 recupera as próximas 10000 linhas de dados e assim por diante. | Não |
filtro | string | Uma ou mais declarações que filtram as linhas na resposta. Cada instrução contém um nome de campo do corpo da resposta e um valor associados aos operadores eq ou ne, e as instruções podem ser combinadas usando e ou ou. Os valores de cadeia de caracteres devem estar entre aspas simples no filtro dentro do parâmetro. Você pode especificar os seguintes campos do corpo da resposta:
|
Não |
aggregationLevel | string | Especifica o intervalo de tempo para o qual recuperar dados agregados. Pode ser uma das seguintes cadeias de caracteres: hora, dia, semanaou mês. Se não for especificado, o padrão será dia. Se você especificar semana ou mês, os valores failureName e failureHash serão limitados a 1000 buckets.Observação: Se você especificar hora, poderá recuperar dados de erro somente das 72 horas anteriores. Para recuperar dados de erro com mais de 72 horas, especifique dia ou um dos outros níveis de agregação. | Não |
orderby | string | Uma instrução que ordena os valores dos dados de resultado. A sintaxe é *orderby=field [order]. O parâmetro field pode ser uma (e somente uma) das seguintes cadeias de caracteres:
O parâmetro de ordem é opcional e pode ser asc ou desc para especificar a ordem crescente ou decrescente para cada campo. O padrão é asc. Aqui está um exemplo orderby string: orderby=date Observação: qualquer parâmetro deve ser da lista suportada por groupby. |
Não |
groupby | string | Uma instrução que aplica a agregação de dados somente aos campos especificados. Você pode especificar os seguintes campos:
As linhas de dados retornadas conterão os campos especificados no parâmetro groupby, bem como o seguinte:
O parâmetro groupby pode ser usado com o parâmetro aggregationLevel. Por exemplo: &groupby=failureName,market&aggregationLevel=week Observação: os parâmetros podem não conter duplicatas. |
Não |
Exemplo de solicitação
Os exemplos a seguir demonstram várias solicitações para obter dados de relatório de erros. Substitua o valor applicationId pelo Store ID do seu aplicativo.
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/failurehits?applicationId=9NBLGGGZ5QDR&startDate=1/1/2015&endDate=2/1/2015&top=10&skip=0 HTTP/1.1
Authorization: Bearer <your access token>
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/failurehits?applicationId=9NBLGGGZ5QDR&startDate=8/1/2015&endDate=8/31/2015&skip=0&filter=market eq 'US' and deviceType eq 'phone' HTTP/1.1
Authorization: Bearer <your access token>
Resposta
Corpo da resposta
Valores de erro
Os elementos na matriz Value contêm os valores a seguir.
Valor | Tipo | Descrição |
---|---|---|
date | string | A primeira data no intervalo de datas para os dados de erros, no formato yyyy-mm-dd . Se a solicitação especificar um único dia, esse valor será essa data. Se a solicitação especificar um intervalo de datas mais longo, esse valor será a primeira data nesse intervalo de datas. Para solicitações que especificam um valor de aggregationLevel de hora, esse valor também inclui um valor temporal no formato hh:mm:ss . |
applicationId | string | A ID da Store do aplicativo cujos dados de erros você deseja recuperar. |
nomeDoAplicativo | string | O nome de exibição do aplicativo. |
failureName | string | O nome da falha, que é composta por quatro partes: uma ou mais classes de problema, um código de verificação de exceção/bug, o nome da imagem em que ocorreu a falha e o nome da função associada. |
failureHash | string | O identificador exclusivo do erro. |
símbolo | string | O símbolo atribuído a esse erro. |
osVersion | string | Uma das seguintes cadeias de caracteres que especifica a versão do sistema operacional na qual o erro ocorreu:
|
osRelease | string | Uma das sequências a seguir que especifica a versão do SO ou as versões de pré-lançamento (como uma subpopulação dentro da versão do SO) em que o erro ocorreu. Para Windows 11: versão 2110 Para Windows 10:
Para Windows Server 1709:
Para Windows Server 2016:
Para Windows 8.1:
Para Windows 7:
Se a versão do SO ou a versão de pré-lançamento for desconhecida, esse campo terá o valor Desconhecido. |
tipoDeEvento | string | Uma das seguintes cadeias de caracteres:
|
mercado | string | O código de país ISO 3166 do mercado de dispositivos. |
tipo de dispositivo | string | Uma das seguintes cadeias de caracteres que indica o tipo de dispositivo no qual o erro ocorreu:
|
packageName | string | O nome exclusivo do pacote do aplicativo associado a esse erro. |
packageVersion | string | A versão do pacote do aplicativo associada a esse erro. |
deviceCount | número | O número de dispositivos exclusivos que correspondem a esse erro para o nível de agregação especificado. |
contagemDeEventos | número | O número de eventos atribuídos a esse erro para o nível de agregação especificado. |
Nota
Esse método só pode recuperar erros ocorridos nos últimos 30 dias.
Exemplo de solicitação e resposta
O snippet de código a seguir demonstra um exemplo de solicitação e corpo de resposta JSON para essa solicitação.
Solicitação de exemplo
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/failurehits?applicationId=9NBLGGGZ5QDR&startDate=07/02/2022&endDate=07/20/2022&top=10&skip=0&filter=market eq 'US'&groupby=failureName,failureHash,symbol,osVersion,eventType,market,deviceType,packageName,packageVersion,osRelease&orderby=date
HTTP/1.1
Authorization: Bearer <your access token>
Resposta de exemplo
{
"Value": [
{
"date": "2022-07-21",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Contoso Demo",
"failureName": "APPLICATION_HANG_BlockedOn_FileIO_Microsoft.Contoso Demo!CEServices.InternalLiveTileUpdaterRuntime_dfffffff_Microsoft.Contoso Demo!unknown_error_in_application",
"failureHash": "c21da75f-ea4d-538b-cfec-73654ef810b9",
"symbol": "Microsoft.Contoso Demo!unknown_error_in_application",
"osVersion": "6.3.9600",
"osRelease": "RTM",
"osArchitecture": null,
"eventType": "hang",
"market": "US",
"deviceType": "PC",
"praid": null,
"packageName": "microsoft.Contoso Demo_2.5.2.34894_x86__8wekyb3d8bbwe",
"packageVersion": "2.5.2.34894",
"ram": null,
"massStorage": null,
"cpu": null,
"cpuManufacturer": null,
"cpuFamilyName": null,
"sandboxId": null,
"deviceCount": 6.0,
"eventCount": 1.05263157894737
},
{
"date": "2022-07-21",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Contoso Demo",
"failureName": "APPLICATION_HANG_BlockedOn_FileIO_Microsoft.Contoso Demo!CEServices.InternalLiveTileUpdaterRuntime_dfffffff_Microsoft.Contoso Demo!unknown_error_in_application",
"failureHash": "c21da75f-ea4d-538b-cfec-73654ef810b9",
"symbol": "Microsoft.Contoso Demo!unknown_error_in_application",
"osVersion": "6.3.9600",
"osRelease": "RTM",
"osArchitecture": null,
"eventType": "hang",
"market": "US",
"deviceType": "Unknown",
"praid": null,
"packageName": "microsoft.Contoso Demo_2.5.2.34894_x86__8wekyb3d8bbwe",
"packageVersion": "2.5.2.34894",
"ram": null,
"massStorage": null,
"cpu": null,
"cpuManufacturer": null,
"cpuFamilyName": null,
"sandboxId": null,
"deviceCount": 7.14285714285714,
"eventCount": 1.05263157894737
},
{
"date": "2022-07-21",
"applicationId": "9NBLGGGZ5QDR",
"applicationName": "Contoso Demo",
"failureName": "APPLICATION_HANG_Microsoft.Contoso Demo!CEServices.InternalLiveTileUpdaterRuntime_dfffffff_twinapi.appcore.dll!WaitCoalesced",
"failureHash": "233e04bb-7a3d-eb28-c316-1120aa9defc0",
"symbol": "twinapi.appcore.dll!WaitCoalesced",
"osVersion": "6.3.9600",
"osRelease": "RTM",
"osArchitecture": null,
"eventType": "hang",
"market": "US",
"deviceType": "PC",
"praid": null,
"packageName": "microsoft.Contoso Demo_2.5.2.34894_x86__8wekyb3d8bbwe",
"packageVersion": "2.5.2.34894",
"ram": null,
"massStorage": null,
"cpu": null,
"cpuManufacturer": null,
"cpuFamilyName": null,
"sandboxId": null,
"deviceCount": 6.0,
"eventCount": 8.94736842105263
}
],
"@nextLink": "failurehits?applicationId=9NBLGGGZ5QDR&aggregationLevel=day&startDate=2022/07/02&endDate=2022/07/21&top=10&skip=10&groupby=failureName,failureHash,symbol,osVersion,eventType,market,deviceType,packageName,packageVersion,osRelease&filter=market eq 'US'&orderby=date",
"TotalCount": 443
}
Tópicos relacionados
- Relatório de integridade
- Obter detalhes de um erro em seu aplicativo
- Obter o rastreamento de pilha de um erro no seu aplicativo
- Baixar o arquivo CAB de um erro no seu aplicativo
- Acessar dados de análise usando os serviços da Microsoft Store
- Obter aquisições de aplicativo
- Obter aquisições de complemento
- Obter classificações de aplicativo
- Obter revisões de aplicativo