Compartir a través de


Uso de la API de Diagnósticos

Importante

Visual Studio App Center se retiró el 31 de marzo de 2025, excepto las características de análisis y diagnóstico, que seguirán siendo compatibles hasta el 30 de junio de 2026. Más información.

App Center Diagnostics admite varias funcionalidades de la API enumeradas bajo la sección de bloqueos y errores de la página Swagger de App Center. Lea la documentación de api de App Center para obtener información sobre cómo adquirir un token de API y realizar llamadas a la API de App Center.

Nota:

La API de diagnósticos de App Center no admite CORS (uso compartido de recursos entre orígenes), por lo que se producirán errores en las solicitudes de los clientes que exigen esto, como los exploradores. Para interactuar con la API desde un explorador, puede usar un servicio de proxy en su propio dominio que reenvía las solicitudes a la API de App Center.

Transición a las nuevas API

Con nuestro anuncio de disponibilidad general de Diagnósticos de App Center el año pasado y nuestras mejoras de diagnóstico para UWP, hemos realizado algunos cambios en nuestras API para permitir que una canalización de back-end mejorada procese los bloqueos y errores. En función de las APIs que utilice, es posible que necesite realizar alguna acción de su parte para garantizar una transición sin problemas.

Hay tres tipos de APIs de fallos:

  1. API que provocan fallos al asociarse con nuevas API
  2. Bloquea las API que ya no existen
  3. Bloquea las API que permanecen inalteradas

API que provocan fallos al asociarse con nuevas API

Las APIs antiguas enumeradas en la sección de bloqueos están en desuso y se han quitado. Debe usar las nuevas API de diagnóstico como se muestra en la tabla siguiente.

APIs de fallos antiguos Nueva API de fallos
GET/v0.1/apps/{owner_name}/{app_name}/retention_settings GET/v0.1/apps/{owner_name}/{app_name}/errors/retention_settings
GET/v0.1/apps/{owner_name}/{app_name}/versions GET/v0.1/apps/{owner_name}/{app_name}/analytics/versions
GET/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/attachments/{attachment_id}/text GET/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/attachments/{attachmentId}/text
GET/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/attachments/{attachment_id}/location GET/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/attachments/{attachmentId}/location
GET/v0.1/apps/{owner_name}/{app_name}/crashes/{crash_id}/attachments GET/v0.1/apps/{owner_name}/{app_name}/errors/{errorId}/attachments
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/stacktrace GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/stacktrace
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/stacktrace GET/v0.1/apps/{nombre_del_propietario}/{nombre_de_la_aplicación}/errores/gruposDeErrores/{identificadorDelGrupoDeError}/errores/{identificadorDelError}/trazaDePila
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/native/download GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errors/{errorId}/download
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id} GET/v0.1/apps/{nombre_propietario}/{nombre_aplicación}/errores/gruposErrores/{idGrupoError}/errores/{idError}
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errors
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id} GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups
DELETE/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id} DELETE 0.1/apps/{app_id}/errors/errorGroups/{errorGroupId}/errors/{errorId}
PATCH/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id PATCH/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}
GET/v0.1/apps/{owner_name}/{app_name}/crashes_info GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups
GET/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups
GET/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/crash_counts GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errorCountsPerDay
GET/v0.1/apps/{owner_name}/{app_name}/analytics/crash_counts GET/v0.1/apps/{owner_name}/{app_name}/errors/errorCountsPerDay
GET/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/models GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/models
GET/v0.1/apps/{owner_name}/{app_name}/analytics/crash_groups/{crash_group_id}/operating_systems GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/operatingSystems
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/raw/location GET/v0.1/apps/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errors/{errorId}/location
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/crashes/{crash_id}/native GET /v0.1/apps/{ownerName}/{appName}/errors/errorGroups/{errorGroupId}/errors/{errorId}/download?format=text"
GET/v0.1/apps/{owner_name}/{app_name}/analytics/crashfree_device_percentages GET/v0.1/apps/{owner_name}/{app_name}/errors/errorfreeDevicePercentages
GET/v0.1/apps/{owner_name}/{app_name}/symbol_groups_info GET/v0.1/apps/{owner_name}/{app_name}/diagnostics/symbol_groups_info
GET/v0.1/apps/{owner_name}/{app_name}/symbol_groups/{symbol_group_id} GET/v0.1/apps/{owner_name}/{app_name}/diagnostics/symbol_groups/{symbol_group_id}
GET/v0.1/apps/{owner_name}/{app_name}/symbol_groups GET/v0.1/apps/{owner_name}/{app_name}/diagnostics/symbol_groups

API de bloqueos no modificadas

Hay algunas API de fallos que siguen siendo las mismas en la nueva canalización. Las SIGUIENTES API seguirán funcionando según lo previsto y no se necesita ninguna acción en este momento.

API de bloqueos no modificadas
GET/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}/status
GET/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}/location
POST/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}/ignore
GET/v0.1/apps/{owner_name}/{app_name}/symbols/{symbol_id}
GET/v0.1/apps/{owner_name}/{app_name}/symbols
GET/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}/location
GET/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}
PATCH/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}
DELETE/v0.1/apps/{owner_name}/{app_name}/symbol_uploads/{symbol_upload_id}
GET/v0.1/apps/{owner_name}/{app_name}/symbol_uploads
POST/v0.1/apps/{owner_name}/{app_name}/symbol_uploads