Obtenir la trace de pile concernant une erreur dans votre application
Utilisez cette méthode dans l’API d’analytique du Microsoft Store pour obtenir la trace de pile pour une erreur dans votre application. Cette méthode peut uniquement télécharger la trace de pile pour une erreur d’application qui s’est produite au cours des 30 derniers jours. Les traces de pile sont également disponibles dans la section Échecs du rapport d’intégrité dans l’Espace partenaires.
Avant de pouvoir utiliser cette méthode, vous devez d’abord utiliser les détails d’obtention d’une erreur dans votre méthode d’application pour récupérer l’ID du fichier CAB associé à l’erreur pour laquelle vous souhaitez récupérer la trace de la pile.
Prérequis
Pour utiliser cette méthode, vous devez d’abord effectuer les opérations suivantes :
- Si ce n’est pas déjà fait, remplissez toutes les conditions préalables relatives à l’API d’analyse de la Boutique Microsoft.
- Obtenir un jeton d’accès Azure AD à utiliser dans l’en-tête de requête pour cette méthode. Une fois que vous avez récupéré le jeton d’accès, vous avez 60 minutes pour l’utiliser avant qu’il n’expire. Une fois le jeton expiré, vous pouvez en obtenir un nouveau.
- Obtenez l’ID du fichier CAB associé à l’erreur pour laquelle vous souhaitez récupérer la trace de la pile. Pour obtenir cet ID, utilisez les détails d’obtention d’une erreur dans votre méthode d’application pour récupérer les détails d’une erreur spécifique dans votre application et utilisez la valeur cabId dans le corps de la réponse de cette méthode.
Requête
Syntaxe de la requête
Méthode | URI de demande |
---|---|
GET | https://manage.devcenter.microsoft.com/v1.0/my/analytics/stacktrace |
En-tête de requête
En-tête | Type | Description |
---|---|---|
Autorisation | string | Obligatoire. Jeton d’accès Azure AD au format porteur<jeton>. |
Paramètres de la demande
Paramètre | Type | Description | Obligatoire |
---|---|---|---|
applicationId | string | ID Store de l’application pour laquelle vous souhaitez obtenir la trace de la pile. L’ID store est disponible sur la page Identité de l’application dans l’Espace partenaires. Un exemple d’ID store est 9WZDNCRFJ3Q8. | Oui |
cabId | string | ID unique du fichier CAB associé à l’erreur pour laquelle vous souhaitez récupérer la trace de la pile. Pour obtenir cet ID, utilisez les détails d’obtention d’une erreur dans votre méthode d’application pour récupérer les détails d’une erreur spécifique dans votre application et utilisez la valeur cabId dans le corps de la réponse de cette méthode. | Oui |
Exemple de requête
L’exemple suivant montre comment obtenir une trace de pile à l’aide de cette méthode. Remplacez la valeur applicationId par l’ID Store de votre application.
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/stacktrace?applicationId=9NBLGGGZ5QDR&cabId=1336373323853 HTTP/1.1
Authorization: Bearer <your access token>
Response
Response body
Valeur | Type | Description |
---|---|---|
active | tableau | Tableau d’objets qui contiennent chacun une trame de données de trace de pile. Pour plus d’informations sur les données de chaque objet, consultez la section valeurs de trace de pile ci-dessous. |
@nextLink | string | S’il existe des pages de données supplémentaires, cette chaîne contient un URI que vous pouvez utiliser pour demander la page suivante des données. Par exemple, cette valeur est retournée si le paramètre supérieur de la requête est défini sur 10, mais qu’il existe plus de 10 lignes d’erreurs pour la requête. |
TotalCount | entier | Nombre total de lignes dans le résultat des données de la requête. |
Valeurs de trace de pile
Les éléments du tableau Valeur contiennent les valeurs suivantes.
Valeur | Type | Description |
---|---|---|
level | string | Numéro d’image que cet élément représente dans la pile des appels. |
image | string | Nom de l’image exécutable ou bibliothèque qui contient la fonction appelée dans ce frame de pile. |
function | string | Nom de la fonction appelée dans ce cadre de pile. Cette option est disponible uniquement si votre application inclut des symboles pour l’exécutable ou la bibliothèque. |
offset | string | Décalage d’octet de l’instruction actuelle par rapport au début de la fonction. |
Remarque
Cette méthode peut uniquement télécharger la trace de pile pour une erreur d’application qui s’est produite au cours des 30 derniers jours.
Exemple de requête et de réponse
Les extraits de code suivants illustrent un exemple de corps de requête et de réponse JSON pour cette requête.
Exemple de requête
GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/stacktrace?applicationId=9NBLGGGZ5QDR&cabId=1234567890123456789
HTTP/1.1
Authorization: Bearer <your access token>
Exemple de réponse
{
"Value": [
{
"level": "0",
"image": "Microsoft.Contoso",
"function": "HANG_QUIESCE",
"offset": "0x0000000000000000",
"isBlamedFrame": true
},
{
"level": "1",
"image": "unknown.dll",
"function": "[.ecxr]",
"offset": "0x0000000000000000",
"isBlamedFrame": false
},
{
"level": "2",
"image": "ntdll.dll",
"function": "RtlpHpSegFree",
"offset": "0x0000000000000000",
"isBlamedFrame": false
},
{
"level": "3",
"image": "ntdll.dll",
"function": "RtlpHpFreeHeap",
"offset": "0x0000000000000000",
"isBlamedFrame": false
},
{
"level": "4",
"image": "ntdll.dll",
"function": "RtlpFreeHeapInternal",
"offset": "0x0000000000000000",
"isBlamedFrame": false
}
],
"TotalCount": 5
}