• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Identifier les services externes lents et la dépendance

Objectifs

À la fin de ce tutoriel, vous :

  • Comprendre comment utiliser l'interface utilisateur des services externes
  • Identifiez les services externes lents tels que l'appel d'API
  • Examiner les performances au niveau des transactions
Screenshot showing the opening map for external services

Pourquoi faire appel à des services externes

La fonctionnalité de services externes vous permet d'observer l'activité en amont et en aval d'un service. Ces services externes en amont ou en aval peuvent être vos propres services que vous avez instrumentés ou des services tiers et appels d'API. Lorsque ces services externes ont un temps de réponse lent, ils retardent votre application, ce qui entraîne un ralentissement.

Identifier les services externes lents

Voyons comment identifier les services externes lents :

Accédez à l’interface utilisateur des services externes : accédez à one.newrelic.com > (select an app) > Monitor > External services. Activez Show new view en haut à gauche si ce n'est pas déjà fait, puis cliquez sur Map en haut à droite.

Les dépendances de votre application, également appelées dépendances en amont, sont répertoriées sur la gauche. Sur la droite se trouvent les services qui dépendent de votre application, appelés services en aval. Vous pouvez voir quels services sont sains ainsi que le débit et la consommation de temps pour chaque service. Vous pouvez sélectionner un service pour voir des informations plus détaillées sur ce service.

Passez la souris sur toutes vos dépendances en amont et essayez d'identifier celles qui ont un temps de réponse ou un nombre trace élevé. Portez une attention particulière à ceux qui présentent des pics significatifs dans leur histoire récente. Si vous trouvez un service suspect, approfondissez votre recherche en passant la souris dessus et en sélectionnant le bouton View traces . Ce nouveau volet affiche des informations sur cette trace de transaction, qui enregistre les appels de fonction disponibles, les appels de base de données et les appels externes de cette transaction.

Il existe différentes manières d'utiliser les informations fournies par cette page, alors n'hésitez pas à les explorer. Voici un exemple workflow:

  1. Recherchez la ligne la plus épaisse et la plus foncée sur la carte et suivez-la jusqu'à son service en amont ou en aval.

  2. Cliquez sur le sommet en amont ou en aval.

  3. Consultez la répartition des transactions entre les deux services.

    Screenshot showing calls to various endpoints in downstream service

    Dans cet exemple, l’un des bords les plus épais (lignes) va du service Order-Composer au point de terminaison de l’entrepôt dans le service Order Status.

  4. Si vous décidez qu'une transaction particulière prend le plus de temps, cliquez sur cette transaction pour vous concentrer spécifiquement sur sa dépendance.

    Screenshot showing the transaction between the Order-Composer service and the warehouse endpoint in the Order-Status service

    Dans cette vue détaillée, vous pouvez voir la transaction entre le service Order-Composer et le point de terminaison de l'entrepôt dans le service Order-Status.

  5. À partir de n’importe quel point de ce flux, consultez les graphiques de performances d’appui, qui montrent les changements au fil du temps.

  6. Si vous atteignez un point dans l'exploration détaillée où vous souhaitez voir le tracing distribué, cliquez sur List en haut à droite, puis cliquez sur Traces dans le tableau.

    Screenshot showing the trace link in the table view

    Conseil

    Les cartes de services, comme celle utilisée ci-dessus, sont un outil puissant pour comprendre les relations complexes au sein de votre système. Plus vous avez instrumenté de services, plus vous débloquez d'observabilité dans votre système. En savoir plus sur les cartes de services.

La vue cartographique des étapes précédentes est idéale pour une vue visuelle de votre système, mais si vous avez du mal à identifier votre service externe problématique, la vue liste peut être plus utile en fournissant des données sous forme de graphiques et de tableaux.

Accédez d’abord à la vue liste en sélectionnant List en haut à droite. Cette page présente différents tableaux et graphiques que vous pouvez utiliser pour identifier les services externes lents. Vous utiliserez cette page pour trier vos services :

  1. Jetez un œil au graphique Response time . Ceci montre vos cinq services externes les plus lents. Notez que même s'ils sont les plus lents, ils ne sont lents que par rapport au reste de vos services. Ils ne sont peut-être pas suffisamment lents pour perturber votre application.

  2. Jetez un oeil au Traced error count. Y a-t-il beaucoup d’erreurs ? Si oui, de quel service proviennent-ils ?

  3. Dans le tableau du bas, triez les services par % change. Cela affichera vos services classés en fonction de la façon dont leur durée ou la trace appelée a changé récemment. Y a-t-il des services qui ont connu une augmentation drastique récemment ?

    Approfondissez les détails des services identifiés ci-dessus en sélectionnant View traces à côté du nom de ce service dans le tableau du bas. Utilisez ces informations pour remplacer ces services, optimiser l'appel d'API ou répartir les charges sur vos services

Vérifiez votre travail

Vous avez identifié le problème, il est maintenant temps d’identifier une solution. Votre solution sera spécifique à votre problème, mais voici quelques exemples :

  • Vous réalisez que vous appelez une API deux fois par accident. Supprimez les appels en double pour réduire de moitié votre temps de réponse total.
  • Un appel d'API spécifique commence à être limité chaque jour vers midi, et vous réalisez que vous atteignez les limites gratuites de l'API à cette heure-là chaque jour. Trouvez une API alternative ou mettez à niveau votre accès.
  • Sous une charge importante, vous heurtez un autre service interne au-delà de ses limites, ce qui entraîne un temps de réponse lent. Répartissez cette charge sur davantage de services ou trouvez un moyen de réduire ou d’optimiser votre charge.

Envoyez votre correctif au développement, puis exécutez un test de charge typique pour avoir une idée de la manière dont votre application fonctionnera en production.

Lorsque vous monitorez vos services externes, gardez un œil attentif sur vos graphiques :

  • Vos services externes atteignent-ils un temps de réponse acceptable ? C'est fait !
  • Est-ce qu'ils se sont améliorés ? Utilisez ce que vous avez appris pour comprendre pourquoi ils se sont améliorés au-delà de la normale.
  • Constatez-vous toujours des temps de réponse lents ? Il y a peut-être un problème de base de données ou peut-être que vos transactions s'exécutent lentement :

1Prepare to triage your application

2Identify problematic transactions

Droits d'auteur © 2025 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.