Guide pratique pour le monitoring d’applications Spring Boot avec Dynatrace Java OneAgent
Remarque
Les plans Essentiel, Standard et Entreprise seront déconseillés à compter de la mi-mars 2025, avec une période de mise hors service de 3 ans. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez l’annonce de mise hors service d’Azure Spring Apps.
Le plan de consommation standard et dédiée sera déconseillé à compter du 30 septembre 2024, avec un arrêt complet après six mois. Nous vous recommandons de passer à Azure Container Apps. Pour plus d’informations, consultez Migrer le plan de consommation standard et dédiée Azure Spring Apps vers Azure Container Apps.
Cet article s'applique à : ✔️ Consommation Standard et dédiée (Aperçu) ✔️ De base/standard❌️ Entreprise
Cet article vous explique comment utiliser Dynatrace OneAgent pour superviser les applications Spring Boot dans Azure Spring Apps.
Avec Dynatrace OneAgent, vous pouvez :
- Surveiller les applications avec Dynatrace OneAgent.
- Configurer Dynatrace OneAgent à l’aide de variables d’environnement.
- Vérifier toutes les données de surveillance à partir du tableau de bord Dynatrace.
La vidéo suivante présente Dynatrace OneAgent.
Prérequis
Activer Dynatrace OneAgent
Les sections suivantes décrivent comment activer Dynatrace OneAgent.
Préparer votre environnement Azure Spring Apps
- Créez une instance d’Azure Spring Apps.
- Créer une application que vous souhaitez signaler à Dynatrace en exécutant la commande suivante. Remplacer les espaces réservés <...> par vos valeurs.
az spring app create \ --resource-group <your-resource-group-name> \ --service <your-Azure-Spring-Apps-name> \ --name <your-application-name> \ --is-public true
Déterminer les valeurs pour les variables d’environnement requises
Pour activer Dynatrace OneAgent sur votre instance Azure Spring Apps, vous devez configurer quatre variables d’environnement : DT_TENANT
, DT_TENANTTOKEN
, DT_CONNECTION_POINT
et DT_CLUSTER_ID
. Pour plus d’informations, consultez Intégration de OneAgent dans Azure Spring Apps.
Pour les applications avec plusieurs instances, Dynatrace dispose de plusieurs méthodes pour les regrouper. DT_CLUSTER_ID
est l’un des moyens. Pour plus d’informations, consultez Détection du groupe de processus.
Ajouter les variables d'environnement à votre application
Vous pouvez ajouter les paires clé/valeur de la variable d’environnement à votre application à l’aide du portail Azure ou d’Azure CLI.
Option 1 : Azure CLI
Pour ajouter les paires clé/valeur avec Azure CLI, exécutez la commande suivante, en remplaçant les espaces réservés <...> par les valeurs déterminées dans les étapes précédentes.
az spring app deploy \
--resource-group <your-resource-group-name> \
--service <your-Azure-Spring-Apps-name> \
--name <your-application-name> \
--artifact-path app.jar \
--env \
DT_TENANT=<your-environment-ID> \
DT_TENANTTOKEN=<your-tenant-token> \
DT_CONNECTION_POINT=<your-communication-endpoint>
Option 2 : Portail Azure
Pour ajouter les paires clé/valeur à l’aide du portail Azure, procédez comme suit :
Dans votre instance Azure Spring Apps, sélectionnez Applications dans le volet de navigation.
Sélectionnez l’application dans la liste, puis sélectionnez Configuration dans le volet de navigation.
Utilisez l’onglet Variables d’environnement pour ajouter ou mettre à jour les variables utilisées par votre application.
Automatiser le provisionnement
À l’aide de Terraform, Bicep ou d’un modèle Azure Resource Manager (modèle ARM), vous pouvez également exécuter un pipeline d’automatisation de l’approvisionnement. Ce pipeline peut fournir une expérience pratique complète pour instrumenter et surveiller les nouvelles applications que vous créez et déployez.
Automatiser le provisionnement à l’aide de Terraform
Pour configurer les variables d’environnement dans un modèle Terraform, ajoutez le code suivant au modèle, en remplaçant les espaces réservés <...> par vos propres valeurs. Pour plus d’informations, consultez Gérer un déploiement Azure Spring Apps actif.
environment_variables = {
"DT_TENANT": "<your-environment-ID>",
"DT_TENANTTOKEN": "<your-tenant-token>",
"DT_CONNECTION_POINT": "<your-communication-endpoint>",
"DT_CLUSTER_ID": "<your-cluster-ID>"
}
Automatiser l’approvisionnement à l’aide d’un fichier Bicep
Pour configurer les variables d’environnement dans un fichier Bicep, ajoutez le code suivant au modèle, en remplaçant les espaces réservés <...> par vos propres valeurs. Pour plus d’informations, consultez Microsoft.AppPlatform Spring/apps/déploiements.
environmentVariables: {
DT_TENANT: '<your-environment-ID>'
DT_TENANTTOKEN: '<your-tenant-token>'
DT_CONNECTION_POINT: '<your-communication-endpoint>'
DT_CLUSTER_ID: '<your-cluster-ID>'
}
Automatiser le provisionnement à l’aide d’un modèle ARM
Pour configurer les variables d’environnement dans un modèle ARM, ajoutez le code suivant au modèle, en remplaçant les espaces réservés <...> par vos propres valeurs. Pour plus d’informations, consultez Microsoft.AppPlatform Spring/apps/déploiements.
"environmentVariables": {
"DT_TENANT": "<your-environment-ID>",
"DT_TENANTTOKEN": "<your-tenant-token>",
"DT_CONNECTION_POINT": "<your-communication-endpoint>",
"DT_CLUSTER_ID": "<your-cluster-ID>"
}
Afficher les rapports dans Dynatrace
Cette section décrit comment rechercher différents rapports dans Dynatrace.
Remarque
Le menu et l’interface utilisateur Dynatrace évoluent progressivement. Pour cette raison, le tableau de bord peut être déplacé vers d’autres sections du site Web Dynatrace, et les captures d’écran suivantes peuvent ne pas refléter la version actuelle de l’interface utilisateur.
Une fois que vous avez ajouté les variables d’environnement à votre application, Dynatrace démarre la collecte des données. Pour afficher les rapports, utilisez le menu Dynatrace, accédez à Services, puis sélectionnez votre application.
Vous pouvez trouver le Flux de service dans <your-app-name>/Details/Service flow :
Vous pouvez trouver les Zones réactives de méthode dans <your-app-name>/Details/Method hotspots :
Vous pouvez trouver les Instructions de base de données dans <your-app-name>/Details/Response time analysis :
Ensuite, accédez à la section Analyse multidimensionnelle.
Vous pouvez trouver les Principales instructions de base de données à partir de Analyse multidimensionnelle/Principales instructions de base de données :
Vous trouverez la Vue d’ensemble des exceptions dans Analyse multidimensionnelle/Vue d’ensemble des exceptions :
Ensuite, accédez à la section Profilage et optimisation.
Vous pouvez trouver l'Analyse du processeur à partir du Profilage et optimisation/Analyse du processeur :
Ensuite, accédez à la section Bases de données.
Vous pouvez trouver le Suivi arrière à partir de Bases de données/Détails/Suivi arrière :
Voir les journaux de Dynatrace OneAgent
Par défaut, Azure Spring Apps affiche les journaux de niveau informations de Dynatrace OneAgent vers STDOUT
. Les journaux sont mélangés avec les journaux des applications. Vous pouvez récupérer la version d’agent explicite à partir des journaux des applications.
Vous pouvez également obtenir un agent Dynatrace à partir des emplacements suivants :
- Journaux Azure Spring Apps
- Azure Spring Apps Application Insights
- Azure Spring Apps LogStream
Vous pouvez appliquer certaines variables d’environnement fournies par Dynatrace pour configurer la journalisation pour Dynatrace OneAgent. Par exemple, DT_LOGLEVELCON
contrôle le niveau de journalisation. La valeur par défaut pour DT_LOGLEVELCON
est info
. Vous pouvez désactiver les journaux de l’agent en définissant DT_LOGLEVELCON
sur off
. Si la journalisation est désactivée, le support Dynatrace vous demande d'abord d'activer la journalisation pour diagnostiquer efficacement les problèmes de l'agent. Vous devez ensuite redémarrer l’application, ce qui est nécessaire pour que la modification prenne effet. Pour d’autres niveaux de journalisation, consultez l’équipe du support technique Dynatrace.
Attention
Nous vous recommandons vivement de ne pas remplacer le comportement de journalisation par défaut fourni par Azure Spring Apps pour Dynatrace. Si vous le faites, les scénarios de journalisation décrits précédemment sont bloqués et les fichiers journaux peuvent être perdus. Par exemple, vous ne devez pas transmettre les variables d’environnement DT_LOGLEVELFILE
à vos applications.
Mise à jour de Dynatrace OneAgent
La mise à jour automatique Dynatrace OneAgent est désactivée et sera mise à niveau tous les trimestres avec le JDK. La mise à jour de l’agent peut affecter les scénarios suivants :
- Les applications existantes qui utilisent Dynatrace OneAgent avant la mise à jour sont inchangées, mais nécessitent un redémarrage ou un redéploiement pour faire appel à la nouvelle version de Dynatrace OneAgent.
- Les applications créées après la mise à jour utilisent la nouvelle version de Dynatrace OneAgent.
Configuration du trafic sortant de l’instance d’injection dans VNet
Pour une instance d’injection dans le réseau virtuel Azure Spring Apps, vous devez vous assurer que le trafic sortant pour les points de terminaison de communication Dynatrace est correctement configuré pour Dynatrace OneAgent. Pour plus d’informations sur la façon d’obtenir communicationEndpoints
, consultez API de déploiement : informations de connectivité GET pour OneAgent. Pour plus d’informations, consultez Responsabilités du client pour l’exécution d’Azure Spring Apps dans un réseau virtuel.
Modèle de prise en charge Dynatrace
Pour plus d’informations sur les limitations lors du déploiement de Dynatrace OneAgent en mode application uniquement, consultez la section plateformes d’applications Cloud de la matrice de prise en charge des fonctionnalités et de la plateforme OneAgent.
Étapes suivantes
Utiliser l’agent In-process Java d’Application Insights dans Azure Spring Apps