Partager via


Obtenir la trace de pile concernant une erreur dans votre application de bureau

Utilisez cette méthode dans l’API d’analytique du Microsoft Store pour obtenir la trace de pile pour une erreur dans une application de bureau que vous avez ajoutée au programme Application de bureau Windows. Cette méthode peut uniquement télécharger la trace de pile pour une erreur qui s’est produite au cours des 30 derniers jours. Les traces de pile sont également disponibles dans le rapport d’intégrité pour les applications de bureau 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 de bureau pour récupérer le hachage d’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 le hachage d’ID du fichier CAB associé à l’erreur pour laquelle vous souhaitez récupérer la trace de la pile. Pour obtenir cette valeur, utilisez les détails d’obtention d’une erreur dans votre méthode d’application de bureau pour récupérer les détails d’une erreur spécifique dans votre application et utilisez la valeur cabIdHash 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/desktop/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 de produit de l’application de bureau pour laquelle vous souhaitez obtenir une trace de pile. Pour obtenir l’ID produit d’une application de bureau, ouvrez un rapport d’analyse pour votre application bureautique dans l’Espace partenaires (tel que le rapport d’intégrité) et récupérez l’ID produit à partir de l’URL. Oui
cabIdHash string Hachage d’ID unique du fichier CAB associé à l’erreur pour laquelle vous souhaitez récupérer la trace de la pile. Pour obtenir cette valeur, utilisez les détails d’obtention d’une erreur dans votre méthode d’application de bureau pour récupérer les détails d’une erreur spécifique dans votre application et utilisez la valeur cabIdHash 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 les paramètres applicationId et cabIdHash par les valeurs appropriées pour votre application de bureau.

GET https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/stacktrace?applicationId=10238467886765136388&cabIdHash=54ffb83a-e159-41d2-8158-f36f306cc01e 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.

Exemple de réponse

L’exemple suivant illustre un exemple de corps de réponse JSON pour cette requête.

{
  "Value": [
    {
      "level": "0",
      "image": "Contoso.ContosoApp",
      "function": "Contoso.ContosoApp.MainPage.DoWork",
      "offset": "0x25C"
    }
    {
      "level": "1",
      "image": "Contoso.ContosoApp",
      "function": "Contoso.ContosoApp.MainPage.Initialize",
      "offset": "0x26"
    }
    {
      "level": "2",
      "image": "Contoso.ContosoApp",
      "function": "Contoso.ContosoApp.Start",
      "offset": "0x66"
    }
  ],
  "@nextLink": null,
  "TotalCount": 3
}