Uso del rastreador de APM en Micronaut
Para utilizar el rastreador de APM con Micronaut, realice lo siguiente:
- Versión de confirmación: el rastreador de APM en Micronaut está soportado con la versión 1.7 o superior del agente de APM.
- Agregue el rastreador de APM al proyecto de Maven. Para obtener más información, consulte Adición del rastreador de APM al proyecto de Maven.
- Agregue la dependencia en
pom.xml
.- Para Micronaut 3.x, añada lo siguiente:
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Para Micronaut 4.x, añada lo siguiente:
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut4</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Para Micronaut 3.x, añada lo siguiente:
- La integración de rastreo de Micronaut registra un bean io.opentracing.tracer que expone la API de rastreo abierta. La dependencia anterior se utilizará para configurar el rastreador de APM como el rastreador por defecto (global).
- Configuración de rastreo para Micronaut.
El rastreador de APM utiliza las siguientes propiedades en el archivo application.yml de Micronaut:
Propiedad Por defecto Necesario Descripción activado
false Sí Propiedad para activar el rastreador de APM. El valor por defecto es false. Esto no puede ser nulo. clave de carga de datos
Sí Clave de carga de datos de APM necesaria para la comunicación en la nube del servicio Oracle APM. data-upload-endpoint Sí Punto final de carga de datos de APM necesario para la comunicación en la nube del servicio Oracle APM. collect-metrics true No Recopila métricas del servidor e informa a la nube del servicio OCI APM.
El valor por defecto es true.
El usuario puede acceder a todas las métricas de servidor recopiladas desde la telemetría de OCI.collect-resources true No Recopila recursos del servidor e informa a la nube del servicio OCI APM.
Todos los recursos recopilados se utilizan como dimensión para la consulta de datos.log-directory apm-tracer-log en el directorio de trabajo de JVM No Ruta completa del directorio de log en el que se escriben todos los logs del rastreador de APM. Si no está definido, se crea el directorio de log por defecto (apm-tracer-log
) en el directorio de trabajo de JVM.tags No Etiquetas estáticas que se incluirán en todos los períodos de rastreo. properties No Propiedades adicionales del rastreador de APM. Esto permite definir las propiedades mediante programación durante el inicio del rastreador de APM.
Las propiedades se ignoran si la clave o el valor son nulos.
La siguiente configuración se debe agregar como nodo secundario (oracleapm) de la sección tracing del archivo application.yml:micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: …
Ejemplo:- Debe especificarla en formato YAML. El nombre del archivo por defecto es
application.yml
. Vea el siguiente ejemplo: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
- Debe especificarla en formato YAML. El nombre del archivo por defecto es
- Instantáneas de Thread: el rastreador OracleApm soporta la función de instantáneas de thread.
Las instantáneas de thread permiten la recopilación de instantáneas de pila de thread que se puede utilizar para el análisis de inmersión profunda. Para obtener más información sobre las instantáneas de thread, consulte Configure Thread Snapshots in APM Tracer.
Para configurar instantáneas de threads para Micronaut, haga lo siguiente:-
Abra el archivo de configuración
application.yml
, vaya a la sección seguimiento y agregue lo siguiente:collect-deep-dive-trace-snapshot: true
-
Agregue la nueva sección deep-dive-properties con las propiedades de instantáneas de subprocesos en 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
Ejemplo:
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
-