Lancement du traceur APM
Pour ajouter la prise en charge de la trace à votre application, procédez comme suit :
Pour la configuration Helidon, ignorez ces étapes et reportez-vous à Utilisation du traceur APM dans Helidon.
-
Importez les classes des traceurs OpenTracing et APM comme suit :
import io.opentracing.Tracer; import com.oracle.apm.tracer.ApmTracer;
-
Le traceur APM peut être lancé à la façon d'un générateur. Le constructeur d'ApmTracer.Builder comporte 2 paramètres : tracerName et serviceName.
- tracerName : nom du traceur. Il peut s'agir de n'importe quel nom de chaîne, à l'exception d'une valeur NULL.
- serviceName : nom du service faisant l'objet de rapports par ce traceur. Il peut s'agir de n'importe quelle chaîne, à l'exception d'une valeur NULL.
Tracer tracer = new ApmTracer.Builder(String tracerName, String serviceName) .<configuration methods> .build();
Avant d'appeler la méthode build() pour créer l'instance du traceur APM, vous pouvez la configurer avec des méthodes de configuration. Certaines méthodes de configuration peuvent également être configurées en définissant des propriétés système Java et des variables d'environnement.
Méthodes de configuration
Méthode | Valeur par défaut | Description | Propriété système Java équivalente | Variable d'environnement équivalente |
---|---|---|---|---|
withDataUploadEndpoint(String endpoint) | Définissez l'adresse de téléchargement de données APM requise pour la communication cloud d'Oracle APM. | com.oracle.apm.agent.data.upload.endpoint | com_oracle_apm_agent_data_upload_endpoint | |
withDataUploadKey(String dataKey) | Définissez la clé de téléchargement de données APM requise pour la communication cloud d'Oracle APM. | com.oracle.apm.agent.private.data.key | com_oracle_apm_agent_private_data_key | |
withTag(String key, String value) withTag(String key, Boolean value) withTag(String key, Number value) withTags(Map<String, Object> tags) |
Définissez des balises statiques à inclure dans toutes les étendues de trace. | |||
withLogDirectory(String directory) | ./apm-tracer-log | Indiquez le chemin complet du répertoire de journaux dans lequel sont écrits tous les journaux du traceur APM. Si cette option n'est pas définie, le répertoire de journaux par défaut, apm-tracer-log, est créé dans le répertoire de travail de la JVM. | com.oracle.apm.agent.log.directory | com_oracle_apm_agent_log_directory |
withProperty(String key, String value) withProperties(Map<String, String> properties) |
Définissez des propriétés du traceur APM. Cette méthode permet de définir des propriétés par programmation lors du démarrage du traceur APM. Toutes les propriétés peuvent également être définies à l'aide de propriétés système Java ou de variables d'environnement. Les propriétés sont ignorées si la clé ou la valeur est NULL. |
|||
withMicrosecondAccurateTimestamp(boolean microsecondAccuracy) | False | Définissez la précision de tous les horodatages à la microseconde près lorsque cette valeur est True. Par défaut, la précision se fait en millisecondes. | ||
withCollectMetrics(boolean collectMetrics) | True |
Définissez le traceur APM de façon à collecter les mesures de serveur et à générer des rapports vers le cloud OCI APM. La valeur par défaut est True. L'utilisateur peut accéder à toutes les mesures de serveur collectées à partir d'OCI Telemetry. Pour plus d'informations sur les mesures de serveur collectées, reportez-vous à Collecte de mesures. |
||
withCollectResources(boolean collectResources) | True |
Définissez le traceur APM de façon à collecter les ressources de serveur et à générer des rapports vers le cloud OCI APM. Toutes les ressources collectées sont utilisées en tant que dimensions pour la requête de données. Pour plus d'informations sur les mesures de serveur collectées, reportez-vous à Collecte de mesures. |
||
withDaemonChannel(String channel) | Le canal de démon APM est une connexion de socket entre le traceur et le démon. Le format de cette valeur de propriété est <hôte>:<port>. Lorsque le démon est démarré avec cet ensemble de propriétés, il accepte la connexion de socket et écoute les données sur le canal indiqué. Lorsque le traceur est démarré avec cet ensemble, l'adresse de téléchargement de données est ignorée et les données sont uniquement envoyées au démon à l'aide de ce canal de socket. | com.oracle.apm.agent.daemon.channel | com_oracle_apm_agent_daemon_channel | |
build() | Lancez l'instance de traceur APM. |
Autres propriétés
Les propriétés peuvent être définies en tant que propriétés système Java, en tant que variables d'environnement ou à l'aide de la méthode de générateur Property().
Propriété système Java | Variable d'environnement | Valeur par défaut | Description |
---|---|---|---|
com.oracle.apm.agent.daemon.channel | com.oracle.apm.agent.daemon.channel | Le canal de démon APM est une connexion de socket entre le traceur et le démon. Le format de cette valeur de propriété est <hôte>:<port>. Lorsque le démon est démarré avec cet ensemble, il accepte la connexion de socket et écoute les données sur le canal indiqué. Lorsque le traceur est démarré avec cet ensemble, l'adresse de téléchargement de données est ignorée et les données sont uniquement envoyées au démon à l'aide de ce canal de socket. | |
com.oracle.apm.agent.data.upload.proxy.url | com_oracle_apm_agent_data_upload_proxy_url | URL du serveur proxy pour la connexion au serveur Oracle APM. Seul le proxy HTTP est pris en charge. | |
com.oracle.apm.agent.log.filesize.mb | com_oracle_apm_agent_log_filesize_mb | 20mb | Taille du fichier journal. Vous pouvez définir la taille des fichiers journaux à l'aide de cette propriété. La valeur par défaut est 20, c'est-à-dire que la taille d'un seul fichier journal correspond à 20 Mo. |
com.oracle.apm.agent.log.rotation.files.count | com_oracle_apm_agent_log_rotation_files_count | 2 | Nombre de fichiers pouvant être créés pour stocker les journaux avec un mécanisme de remplacement. Par exemple : si 2 est indiquée comme valeur de cette propriété, les journaux sont stockés dans le premier fichier jusqu'à atteindre la limite de taille de fichier. Une fois cette limite atteinte, un fichier est créé et prend le relais pour stocker les journaux. Lorsque la limite de taille est atteinte dans le second fichier, le contenu du premier fichier est supprimé et la journalisation démarre dans ce dernier. Les fichiers sont nommés de manière cohérente avec un suffixe numérique. Par exemple, ApmTracer.log et ApmTracer1.log. La valeur par défaut est 2, c'est-à-dire que 2 fichiers sont utilisés pour stocker les journaux. |
com.oracle.apm.agent.logging.level | com_oracle_apm_agent_logging_level | INFO | Les niveaux de journalisation sont les suivants : SEVERE, WARNING, INFO, DEBUG. Ils sont classés du plus petit au plus grand nombre d'entrées écrites dans ApmTracer.log. |
com.oracle.apm.agent.tracer.propagation.type | com_oracle_apm_agent_tracer_propagation_type | B3 |
Le traceur APM ajoutera et lira des en-têtes HTTP pour connecter les étendues dans les appels HTTP. Différents types de format d'en-tête de propagation peuvent être utilisés pour cela. Si vous utilisez également d'autres types de traceur, tels que Zipkin ou Jaeger, vous devrez peut-être ajuster ce paramètre à des fins de compatibilité.
|