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 d’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 employer la méthode pour obtenir des détails sur une erreur dans votre application de bureau afin de récupérer le hachage ID du fichier CAB associé à l’erreur pour laquelle vous souhaitez obtenir la trace de la pile.

Conditions préalables

Pour utiliser cette méthode, vous devez d’abord effectuer les opérations suivantes :

  • Si vous ne l’avez pas déjà fait, remplissez tous les prérequis pour l’API d’analytique du Microsoft Store.
  • Obtenez 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 de l'ID du fichier CAB associé à l’erreur pour laquelle vous souhaitez récupérer la trace de pile. Pour obtenir cette valeur, utilisez la obtenir les détails d’une erreur dans votre application de bureau méthode pour récupérer les détails d’une erreur spécifique dans votre application, puis utilisez la valeur cabIdHash dans le corps de réponse de cette méthode.

Requête

Syntaxe de la requête

Méthode URI de la requête
OBTENIR https://manage.devcenter.microsoft.com/v1.0/my/analytics/desktop/stacktrace

En-tête de requête

En-tête de page Catégorie Descriptif
Autorisation ficelle Obligatoire. Le jeton d’accès Azure AD sous la forme Bearer<token>.

Paramètres de la demande

Paramètre Catégorie Descriptif Obligatoire
applicationId ficelle ID de produit de l’application de bureau pour laquelle vous souhaitez obtenir une trace de pile. Pour obtenir l’ID de produit d’une application de bureau, ouvrez n’importe quel rapport d’analyse pour votre application de bureau dans l’Espace partenaires (par exemple, le rapport d’intégrité ) et récupérez l’ID de produit à partir de l’URL. Oui
cabIdHash ficelle 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 la obtenir les détails d’une erreur dans votre application de bureau méthode pour récupérer les détails d’une erreur spécifique dans votre application et utilisez la valeur cabIdHash dans le corps de 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=00001111-aaaa-2222-bbbb-3333cccc4444 HTTP/1.1
Authorization: Bearer <your access token>

Réponse

Corps de réponse

Valeur Catégorie Descriptif
Valeur 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 des valeurs de trace de pile ci-dessous.
@nextLink ficelle 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 premier de la requête est défini sur 10, mais qu’il existe plus de 10 lignes d’erreurs pour la requête.
NombreTotal 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 Catégorie Descriptif
niveau ficelle Numéro de frame que cet élément représente dans la pile d'appels.
image ficelle Nom de l’image exécutable ou de l'image de bibliothèque qui contient la fonction appelée dans cette trame de pile.
fonction ficelle Le nom de la fonction appelée dans cette trame de pile. Cette option est disponible uniquement si votre application inclut des symboles pour l’exécutable ou la bibliothèque.
décalage ficelle Décalage en octets 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
}