Vous avez maintenant identifié l’API ou le service externe qui nécessite votre attention. Ce tutoriel vous guide à travers les étapes nécessaires pour résoudre les problèmes.
Notez qu’il n’existe pas de solution unique aux problèmes liés aux API et aux services externes. Prenez les idées de ce tutoriel comme point de départ et approfondissez-les chaque fois que vous découvrez quelque chose.
Objectifs
Ce document utilise Sms notification
, le service externe que nous avons identifié dans le document du didacticiel précédent, comme exemple d'API ou de service externe problématique. Ce document couvre :
- Recherche d'anomalie dans les tableaux métriques
- Utiliser la trace pour trouver la cause première
Identifier et résoudre la cause profonde
Vous avez déjà utilisé la vue cartographique pour identifier le service externe problématique, mais nous pouvons l'utiliser pour aller encore plus loin :
Identifier une anomalie avec des métriques
Dans la vue cartographique, passez la souris sur l’API ou le service externe problématique et sélectionnez Show entity preview.

Cela ouvre un volet dans lequel vous obtenez un aperçu de l’état général du service. Vous avez déjà utilisé certaines de ces mesures pour identifier le problème, mais il est utile d'examiner cela de plus près ici. Gardez un œil sur :
Des pics dans les charts.
Taux de réponse ou débit évidemment élevé.
Les taux de réponse et le débit atteignent des sommets et des creux à peu près au même moment.
Si vous identifiez une anomalie, utilisez le sélecteur d'intervalle de temps en haut à droite pour élargir la plage de temps que vous regardez. Cela est utile pour identifier une anomalie par opposition à un modèle.
Vous pouvez voir dans la capture d'écran ci-dessus que rien ne ressort, sauf que le débit est un peu plus élevé que ce à quoi on pourrait s'attendre. Il n’y a pas de quoi s’inquiéter immédiatement.
Trouver un problème de niveau de code avec trace
Passez à nouveau la souris sur le service externe problématique et cette fois cliquez sur View traces.

Cela affiche différents graphiques sur la trace impliquée dans ce service. Dans ce cas, il y a une seule trace appelée Controller/Sinatra//purchase
qui vous permet de suivre les données créées depuis le clic de votre utilisateur sur le bouton d'achat jusqu'à l'appel d'API qui envoie une notification par SMS.
Cliquez aussi profondément que vous le jugez utile, mais concentrez-vous à nouveau sur la recherche d'anomalies ou d'erreurs dans le graphique. Par exemple, vous pouvez suivre la trace jusqu'à l'appel d'API qui décrypte le numéro de téléphone stocké d'un utilisateur. Une erreur ici pourrait révéler tout le problème. Si l'appel de décryptage échoue et ne renvoie jamais de numéro de téléphone valide, votre utilisateur ne recevra jamais de notification téléphonique.
Cela expliquerait également pourquoi vous n’avez vu aucune erreur dans les graphiques Sms notification
. Cette API fonctionnait correctement, mais une API plus en amont lui fournissait des données qui ne servaient à rien.
Utiliser les données pour identifier les erreurs logiques
Toutes les solutions ne découlent pas directement d’erreurs ou d’anomalies. La cause profonde peut être beaucoup plus banale.
Par exemple, disons que vous avez exploré tous les graphiques liés à l’API Sms notification
. Vous avez également parcouru chaque trace et n’avez identifié aucune erreur ou anomalie étrange. Tout semble fonctionner correctement, mais vos clients ne reçoivent toujours pas de notification.
Vous vous souvenez avoir regardé le tableau de débit pour Sms notification
et vous réalisez soudainement que vous avez peut-être atteint la limite d'achats que votre processeur de paiement vous fournit. Leur API a reçu votre appel, mais comme vous aviez atteint votre quota, elle n'a tout simplement rien fait avec la demande qu'elle a reçue. Cela ne vous a même pas renvoyé d'erreur.
Quelle est la prochaine étape ?
Maintenant que vous avez résolu vos problèmes d'API et tracé l'intégralité de votre carte système, vous êtes prêt à explorer davantage notre plateforme :
- Votre application est-elle lente ? Apprenez à trier et à diagnostiquer la latence dans votre application avec notre tutoriel Mon application est lente .
- Si vous avez un jour de pointe de demande à venir, découvrez comment New Relic peut vous aider à planifier la capacité.
- Vous souhaitez créer des alertes de haute qualité ? Notre tutoriel sur les alertes peut vous aider à mettre en place un système d'alerte.