Uso dell'API di diagnostica
Importante
Visual Studio App Center è pianificato per il ritiro il 31 marzo 2025. Anche se è possibile continuare a usare Visual Studio App Center fino a quando non viene completamente ritirato, esistono diverse alternative consigliate a cui è possibile prendere in considerazione la migrazione.
Altre informazioni sulle sequenze temporali di supporto e sulle alternative.
La diagnostica di App Center supporta più funzionalità API elencate nella sezione arresti anomali ed errori della pagina swagger di App Center. Leggere la documentazione dell'API di App Center per informazioni su come acquisire un token API ed effettuare chiamate all'API di App Center.
Nota
L'API diagnostica di App Center non supporta CORS (Condivisione risorse tra le origini), quindi le richieste dai client che richiedono questo tipo di errore, ad esempio i browser, avranno esito negativo. Per interagire con l'API da un browser, è possibile usare un servizio proxy nel proprio dominio che inoltra le richieste all'API di App Center.
Transizione alle nuove API
Con l'annuncio della disponibilità generale di Diagnostica di App Center l'anno scorso e i miglioramenti della diagnostica UWP, sono state apportate alcune modifiche alle API per consentire a una pipeline back-end migliorata di elaborare arresti anomali ed errori. A seconda delle API usate, potrebbe essere necessaria un'azione per garantire una transizione uniforme.
Esistono tre tipi di API di arresto anomalo:
- Arresta in modo anomalo le API che eseguono il mapping alle nuove API
- Arresta in modo anomalo le API che non esistono più
- Arresta in modo anomalo le API che rimangono invariate
Arresta in modo anomalo le API che eseguono il mapping alle nuove API
Le API precedenti elencate nella sezione arresti anomali sono deprecate e sono state rimosse. È necessario usare le nuove API di diagnostica, come indicato nella tabella seguente.
API di arresto anomalo precedenti | Nuova API arresti anomali |
---|---|
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/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errors/{errorId}/stacktrace |
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/{owner_name}/{app_name}/errors/errorGroups/{errorGroupId}/errors/{errorId} |
GET/v0.1/apps/{owner_name}/{app_name}/crash_groups/{crash_group_id}/arresti anomali | 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 degli arresti anomali non alterati
Esistono alcune API di arresto anomalo che rimangono invariate nella nuova pipeline. Le API seguenti continueranno a funzionare come previsto e al momento non è necessaria alcuna azione.
API degli arresti anomali non alterati |
---|
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 |