Passer la navigation

Utiliser New Relic One pour surveiller sans effort les applications dans Azure Spring Cloud

Publié le 1 juillet, 2021

Principal PM Architect, Java on Azure

Nous avons le plaisir d’annoncer l’intégration de l’analyse des performances New Relic One dans Azure Spring Cloud.

Au cours des 18 derniers mois, nous avons travaillé avec de nombreuses entreprises clientes pour en savoir plus sur leurs scénarios. La plupart de ces clients ont des milliers d’applications Spring Boot qui s’exécutent dans des centres de données locaux. Lors de la migration de ces applications vers le cloud, ils doivent les instrumenter pour l’analyse des performances des applications (APM) à l’aide d’outils que leurs développeurs connaissent et utilisent depuis des années. Ils doivent également garantir la continuité des applications de bureau et mobiles déjà préinstallées pour une analyse de bout en bout à l’aide d’agents comme New Relic One. Avec l’intégration de New Relic One dans Azure Spring Cloud, vous pouvez continuer votre parcours et instrumenter facilement vos applications Spring Boot avec New Relic One.

La plupart des organisations qui déploient des applications Spring Boot partagent aujourd’hui un objectif similaire : optimiser les avantages de l’exécution d’applications Spring Boot à pratiquement n’importe quelle échelle, à l’aide de l’automatisation et de l’analyse des performances des applications. Bien qu’Azure Spring Cloud élimine la plupart des soucis associés à la gestion des charges de travail conteneurisées, les défis en lien avec l’analyse et la maintenance des performances et de l’intégrité de ces applications, ou avec la résolution des problèmes lorsqu’ils se produisent, peuvent être décourageants, en particulier lorsque les organisations déploient ces applications à très grande échelle. Pour vous aider à poursuivre votre parcours New Relic One, nous avons intégré et mis à niveau votre capacité à instrumenter, analyser et fournir une observabilité à l’aide de New Relic One sur l’ensemble de vos instances Azure Spring Cloud. Cela commence par la configuration rapide et facile de l’instrumentation. Vous pouvez ensuite analyser les performances et l’intégrité de vos applications, des machines virtuelles Java (JVM), des transactions, etc. pour identifier et résoudre les problèmes de performances.

Instrumentez vos applications Spring Boot

Exécutez une automatisation du « provisionnement » pour une expérience totalement autonome de l’instrumentation et de l’analyse de toutes les nouvelles applications que vous créez et déployez, à l'aide de Terraform ou d’un modèle ARM. Vous pouvez également l’exécuter à la demande à l’aide d'’Azure CLI pour plus de flexibilité et de contrôle.

az spring-cloud app update --name customers-service \
    --jvm-options="-javaagent:/opt/agents/newrelic/java/newrelic-agent.jar" \
    --env NEW_RELIC_APP_NAME=customers-service NEW_RELIC_LICENSE_KEY=<key>

Explorez les performances des applications Spring Boot

Après l’instrumentation, vous pouvez explorer les performances des applications Spring Boot par le biais du portail New Relic One. Vous pouvez afficher vos applications en action via les cartes de service. Par exemple, la capture d’écran ci-dessous montre toutes les applications dans le projet Petclinic populaire :

Capture d’écran 1 : affiche toutes les applications dans le projet Petclinic populaire.

Figure 1 : affiche toutes les applications dans le projet Petclinic populaire.

Vous pouvez observer les performances de votre application en parcourant les applications une à une dans le portail New Relic One. Par exemple, la capture d’écran ci-dessous montre les transactions traitées par customers-service, le débit et le taux d’erreur :

Capture d’écran 2 : affiche les transactions traitées par customers-service, le débit et le taux d’erreur.

Figure 2 : affiche les transactions traitées par customers-service, le débit et le taux d’erreur.

Vous pouvez examiner plus en détail les machines virtuelles Java sous-jacentes en accédant au panneau « JVM » sur le portail New Relic One. Par exemple, la capture d’écran ci-dessous montre le nombre de machines virtuelles Java pour toutes les instances d’application de customers-service :

Capture d’écran 3 : affiche le nombre de machines virtuelles Java pour toutes les instances d’application customers-service.

Figure 3 : affiche le nombre de machines virtuelles Java pour toutes les instances d’application customers-service.

Vous pouvez analyser les dépendances des applications, notamment les transactions de base de données, en accédant au panneau « Bases de données » dans le portail New Relic One. Par exemple, la capture d’écran ci-dessous montre toutes les transactions de base de données pour customers-service :

Capture d’écran 4 : affiche toutes les transactions de base de données pour customers-service.

Figure 4 : affiche toutes les transactions de base de données pour customers-service.

Vous pouvez examiner le rapport des appels de procédure de chaque thread par le biais du nouveau profileur de thread New Relic One et comprendre les temps consommés par les méthodes Java. Cela fournit des insights sur les fonctions « à chaud » des applications où le plus de temps est passé. Par exemple, la capture d’écran ci-dessous montre une arborescence des appels de procédure d’un thread dans l’application customers-service :

Capture d’écran 5 : affiche une arborescence des appels de procédure d’un thread dans customers-service.

Figure 5 : affiche une arborescence des appels de procédure d’un thread dans customers-service.

Fournissez de la valeur à vos utilisateurs finaux

Une fois l’instrumentation réalisée, lorsque vous effectuez un scale-out vers plusieurs instances d’applications Spring Boot, toutes les nouvelles instances d’applications sont automatiquement analysées pour vous. Vous passez moins de temps à gérer l’installation et la maintenance de l’agent et plus d’énergie à l’identification et à la résolution plus rapide des incidents. Le service Azure Spring Cloud est à même d’effectuer une mise à jour périodique de l’agent.

Affichage de vos instances d’applications Spring Boot

Le navigateur New Relic One vous offre un aperçu rapide de l’intégrité opérationnelle de vos instances d’applications. Cette vue d’ensemble de votre patrimoine est automatiquement disponible et aucune configuration n’est requise. Le navigateur vous permet d’explorer facilement un grand nombre d’instances, car il affiche de manière intuitive vos instances dans une vue en nid d’abeilles dense avec des couleurs d’icônes de statut basées sur les alertes que vous définissez. Identifiez rapidement les instances d’alerte et dévoilez les causes racine en plus de voir quels systèmes dépendants peuvent être affectés.

En guise d’illustration, l’affichage suivant du navigateur regroupe vos instances de l’ensemble des instances Azure Spring Cloud, ce qui vous permet de comparer rapidement vos opérations dans un déploiement à plusieurs régions. Vous pouvez regrouper et filtrer vos instances pour vous concentrer rapidement sur les problèmes. Vous pouvez également accéder à une des instances pour afficher un résumé de son activité et des éventuelles violations avec des métriques clés et des métadonnées, notamment des attributs personnalisés :

Capture d’écran 6 : montre comment le navigateur regroupe vos instances de l’ensemble des instances Azure Spring Cloud.

Figure 6 : montre comment le navigateur regroupe vos instances de l’ensemble des instances Azure Spring Cloud.

Détectez les anomalies dans vos instances d’applications Spring Boot

La fonctionnalité Lookout de New Relic fournit une vue intuitive de vos instances qui s’écartent du comportement normal, en utilisant des cercles de couleur indiquant la gravité du changement de signal récent et dont la taille est proportionnelle à la grandeur du signal de mesure. Lookout compare automatiquement les signaux des cinq dernières minutes par rapport à l’heure précédente.

De même, vous pouvez utiliser New Relic One pour l’analyse des applications Java dans les services Azure, tels que Azure Kubernetes Service et Machines virtuelles.

Créez vos solutions et analysez-les aujourd’hui

Azure Spring Cloud est conjointement créé, exploité et pris en charge par Microsoft et VMware. Il s’agit d’un service complètement managé pour les applications Spring Boot. Il élimine la complexité liée à la gestion de l’infrastructure et de l’intergiciel Spring Cloud. Vous pouvez ainsi vous concentrer sur la création de votre logique métier et laisser Azure prendre en charge la mise à l’échelle dynamique, les correctifs, la sécurité, la conformité et la haute disponibilité. En quelques étapes et en quelques minutes, vous pouvez provisionner Azure Spring Cloud, créer des applications, déployer et mettre à l'échelle des applications Spring Boot et démarrer l’analyse. Nous allons continuer à enrichir Azure Spring Cloud avec des fonctionnalités plus conviviales pour les développeurs et adaptées aux entreprises.

N'hésitez pas à nous expliquer comment vous créez des solutions percutantes à l'aide d'Azure Spring Cloud. Lancez-vous dès aujourd'hui : déployez des applications Spring sur Azure Spring Cloud en suivant le démarrage rapide.

Ressources