Utiliser le traceur APM dans Helidon
Pour utiliser le traceur APM avec Helidon, procédez comme suit :
- Ajoutez le traceur APM au projet Maven. Pour plus de détails, voir Ajouter un traceur APM au projet Maven.
- Vérifiez la version de Helidon et ajoutez sa dépendance correspondante.
Pour Helidon 2, ajoutez la dépendance suivante :
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-helidon</artifactId> <version>[1.0.1389,)</version> </dependency>
Pour Helidon 3 SE, ajoutez la dépendance suivante :<dependency> <groupId>io.helidon.tracing</groupId> <artifactId>helidon-tracing-opentracing</artifactId> </dependency> <dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-helidon3</artifactId> <version>[1.8.3326,)</version> </dependency>
Pour Helidon 3 MP, ajoutez la dépendance suivante :<dependency> <groupId>io.helidon.tracing</groupId> <artifactId>helidon-tracing-opentracing</artifactId> </dependency> <dependency> <groupId>io.helidon.microprofile.tracing</groupId> <artifactId>helidon-microprofile-tracing</artifactId> </dependency> <dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-helidon3</artifactId> <version>[1.8.3326,)</version> </dependency>
Pour Helidon 4 SE, ajoutez la dépendance suivante :<dependency> <groupId>io.helidon.tracing</groupId> <artifactId>helidon-tracing-opentracing</artifactId> </dependency> <dependency> <groupId>io.helidon.tracing.providers</groupId> <artifactId>helidon-tracing-providers-opentracing</artifactId> </dependency> <dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-helidon4</artifactId> <version>[1.15.0.516,)</version> </dependency>
Note
Pour Helidon 4, notamment Helidon 4 MP, voir Prise en charge de l'Opentelemetry pour Helidon 4.
- Configuration pour Helidon.
Le traceur APM utilise les propriétés suivantes dans le fichier de configuration de Helidon :
Propriété Valeur par défaut Obligatoire Description name Non Nom du traceur. Cette propriété ne peut pas être nulle. service Oui Nom du service. Cette propriété ne peut pas être nulle. private-data-key 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. daemon-channel Non Le canal de démon APM est une connexion de connecteur logiciel entre le traceur et le démon. Le format de cette valeur de propriété est <hôte> :<port>. Si cette propriété est définie lorsque le démon est démarré, il accepte la connexion de connecteur logiciel et écoute les données sur ce canal.
Si cette propriété est définie lors du démarrage du traceur, le point d'extrémité de chargement des données est ignoré et les données ne sont envoyées au démon qu'à l'aide de ce canal de connecteur logiciel.
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.
Exemples :- Helidon SE : Vous devez le spécifier au format YAML. Le nom par défaut est
application.yaml
. Prenons l'exemple suivant :tracing: service: "helidon-http" data-upload-endpoint: <data upload endpoint of your OCI domain> private-data-key: <privatedata key of your OCI domain> collect-metrics: true collect-resources: true log-directory: "/user/apm/log" tags: tag1: true tag2: 1234 tag3: "hello" properties: com.oracle.apm.agent.logging.level: DEBUG com.oracle.apm.agent.key1: value123
Ce qui précède utilise le format privilégié pour la section
properties
. Le format suivant est également pris en charge :tracing: ... ... ... properties: - key: com.oracle.apm.agent.logging.level value: DEBUG - key: com.oracle.apm.agent.key1 value: value123
- Helidon MP : Vous devez le spécifier dans le format PROPRIÉTÉS (clé=valeur). Le nom par défaut est
microprofile-config.properties.
Prenons l'exemple suivant :
Le format ci-dessus est privilégié pour la sectiontracing.service=my-helidon-service tracing.data-upload-endpoint=<data upload endpoint of your OCI domain> tracing.private-data-key=<private data key of your OCI domain> tracing.collect-metrics=true tracing.collect-resources=true tracing.log-directory=/user/apm/log tracing.tags.tag1=true tracing.tags.tag2=1234 tracing.tags.tag3=hello tracing.properties.com.oracle.apm.agent.data.upload.file=stdout tracing.properties.com.oracle.apm.agent.json.pretty=true
properties
, mais il prend également en charge le format suivant :tracing.service=my-helidon-service ... ... ... tracing.properties.0.key=com.oracle.apm.agent.data.upload.file tracing.properties.0.value=stdout tracing.properties.1.key=com.oracle.apm.agent.json.pretty tracing.properties.1.value=true
- Helidon SE : Vous devez le spécifier au format YAML. Le nom par défaut est
- Si vous avez Helidon MP, ignorez cette étape.
Démarrez et configurez le traceur de Helidon SE, comme l'application
Main.java
, en procédant comme suit :Tracer tracer = TracerBuilder.create(Config.create()).build();
En utilisant le code ci-dessus, vous vous assurez que le paramètre
TracerBuilder
est ajouté dans le projet Helidon. Vous créez un objet de configuration et utilisez le même objet pour créer un TracerBuilder dans Main.java.TracerBuilder démarre le traceur APM en tant que traceur opentracant et est enregistré dans l'opentracing GlobalTracer.
Prise en charge d'Opentelemetry pour Helidon 4
Pour les applications Helidon 4, suivez les instructions indiquées sous Activer OpenTelemetry dans l'agent APM dans la section Configurer l'agent Java APM pour qu'il fonctionne avec OpenTelemetry.
La prise en charge de l'option Opentracing est obsolète pour Helidon 4 MP. Si vous devez configurer la prise en charge d'Opentelemetry, voir Activer OpenTelemetry dans l'agent APM à partir de Configurer l'agent Java APM pour qu'il fonctionne avec OpenTelemetry.