Utiliser le traceur APM en micronaute
Pour utiliser le traceur APM avec le micronaute, effectuez les opérations suivantes :
- Confirmation de version : Le traceur APM dans Micronaut est pris en charge avec l'agent APM version 1.7 ou supérieure.
- Ajoutez le traceur APM au projet Maven. Pour plus de détails, voir Ajouter un traceur APM au projet Maven.
- Ajoutez la dépendance dans
pom.xml
.- Pour Micronaut 3.x, ajoutez ce qui suit :
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Pour Micronaut 4.x, ajoutez ce qui suit :
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut4</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Pour Micronaut 3.x, ajoutez ce qui suit :
- L'intégration de traçage de Micronaut enregistre un bean io.opentracing.tracer qui expose l'API Open Tracing. La dépendance ci-dessus sera utilisée pour configurer le traceur APM comme traceur par défaut (global).
- Configuration de suivi pour Micronaut.
Le traceur APM utilise les propriétés suivantes dans le fichier application.yml de Micronaut :
Propriété Valeur par défaut Obligatoire Description activée
false Oui Propriété permettant d'activer le traceur APM. Valeur par défaut : false. Cette valeur ne peut pas être vide. clé de chargement des données
Oui Clé de chargement des données APM requise pour la communication en nuage avec le service Oracle APM. data-upload-endpoint Oui Point d'extrémité de chargement des données APM requis pour la communication en nuage avec le service Oracle APM. collect-metrics true Non Collecte les mesures de serveur et les transmet au service OCI APM Cloud.
La valeur par défaut est true (Vrai).
L'utilisateur peut accéder à toutes les mesures de serveur collectées à partir du service de télémétrie d'OCI.collect-resources true Non Collecte les ressources de serveur et les transmet au service OCI APM Cloud.
Toutes les ressources collectées sont utilisées en tant que dimension aux fins d'interrogation des données.log-directory apm-tracer-log dans le répertoire de travail de la machine virtuelle Java Non Chemin complet du répertoire de journalisation dans lequel tous les journaux du traceur APM sont écrits. S'il n'est pas défini, le répertoire de journalisation par défaut (apm-tracer-log
) est créé dans le répertoire de travail de la machine virtuelle Java.tags Non Marqueurs statiques à inclure dans tous les intervalles de traçage. properties Non Propriétés supplémentaires du traceur APM. Des propriétés peuvent ainsi être définies par programmation au moment du démarrage du traceur APM.
Les propriétés sont ignorées si la clé ou la valeur est nulle.
La configuration suivante doit être ajoutée en tant que noeud enfant (oracleapm) de la section tracing du fichier application.yml :micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: …
Exemple :- Vous devez la spécifier au format YAML. Le nom de fichier par défaut est
application.yml
. Prenons l'exemple suivant :tracing: oracleapm: enabled: true data-upload-key: <data upload endpoint of your OCI domain> data-upload-endpoint: <privatedata key of your OCI domain> collect-resources: true collect-metrics: true log-directory: "/user/apm/log " tags: tag1: false tag2: 123 tag3: "stringWithQuotes" tag4: 1e4 tag5: 0.32 tag6: stringWoQuotes properties: com.oracle.apm.agent.logging.level : DEBUG com.oracle.apm.agent.key1 : value1
- Vous devez la spécifier au format YAML. Le nom de fichier par défaut est
- Instantanés d'unité d'exécution : Le traceur OracleApm prend en charge la fonction d'instantanés d'unité d'exécution.
Les instantanés d'unité d'exécution permettent la collecte des instantanés de la pile d'unités d'exécution qui peuvent être utilisés pour l'analyse approfondie. Pour plus d'informations sur les instantanés d'unité d'exécution, voir Configurer des instantanés d'unité d'exécution dans le traceur APM.
Pour configurer les instantanés d'unité d'exécution pour Micronaut, procédez de la façon suivante :-
Ouvrez le fichier de configuration
application.yml
, allez à la section Tracing et ajoutez les éléments suivants :collect-deep-dive-trace-snapshot: true
-
Ajoutez la nouvelle section deep-dive-properties avec les propriétés des instantanés d'unité d'exécution sous tracing :
deep-dive-properties: com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute: 100 com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute: 200 com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS: 250 com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace: 16 com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot: 256 com.oracle.apm.agent.deepdive.logLevel: INFO com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent: 90 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold: 3 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold: 5 com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold: 50 com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold: 60000
Exemple :
micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: enabled: true data-upload-key: <data upload endpoint of your OCI domain> data-upload-endpoint: <privatedata key of your OCI domain> collect-resources: true collect-metrics: true log-directory: "/user/apm/log " collect-deep-dive-trace-snapshot: true deep-dive-properties: com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute: 100 com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute: 200 com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS: 250 com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace: 16 com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot: 256 com.oracle.apm.agent.deepdive.logLevel: INFO com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent: 90 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold: 3 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold: 5 com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold: 50 com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold: 60000
-