Instanciación del rastreador de APM
Siga estos pasos para agregar soporte de rastreo a la aplicación:
Para la configuración de Helidon, omita estos pasos y consulte Uso del rastreador de APM en Helidon.
-
Importe las clases de rastreador de opentracing y rastreador de APM haciendo lo siguiente:
import io.opentracing.Tracer; import com.oracle.apm.tracer.ApmTracer;
-
El rastreador de APM se puede instanciar en el estilo de creador. El constructor de ApmTracer.Builder tiene 2 parámetros: tracerName y serviceName.
- tracerName: nombre de este rastreador. Puede ser cualquier nombre de cadena, excepto nulo.
- serviceName: nombre del servicio notificado por este rastreador. Puede ser cualquier cadena, excepto nulo.
Tracer tracer = new ApmTracer.Builder(String tracerName, String serviceName) .<configuration methods> .build();
Antes de llamar al método build() para crear la instancia de rastreador de APM, se puede configurar con métodos de configuración. Algunos métodos de configuración también se pueden configurar definiendo las propiedades del sistema Java y las variables de entorno.
Métodos de configuración
Método | Por defecto | Descripción | Propiedad del sistema Java equivalente | Variable de entorno equivalente |
---|---|---|---|---|
withDataUploadEndpoint(Punto final de cadena) | Defina el punto final de carga de datos de APM necesario para la comunicación en la nube de Oracle APM. | com.oracle.apm.agent.data.upload.endpoint | com_oracle_apm_agent_data_upload_endpoint | |
withDataUploadKey(String dataKey) | Defina la clave de carga de datos de APM necesaria para la comunicación en la nube de 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) |
Defina las etiquetas estáticas que se incluirán en todos los períodos de rastreo. | |||
withLogDirectory(String directory) | ./apm-tracer-log | Especifique la ruta completa del directorio de log donde se escriben todos los logs del rastreador de APM. Si se deja sin definir, se crea el directorio de log por defecto, apm-tracer-log, en el directorio de trabajo de JVM. | com.oracle.apm.agent.log.directory | com_oracle_apm_agent_log_directory |
withProperty(String key, String value) withProperties(Map<String, String> properties) |
Defina una o más propiedades de rastreador de APM. Esto permite definir las propiedades mediante programación durante el inicio del rastreador de APM. Todas las propiedades también se pueden definir mediante propiedades del sistema Java o variables de entorno. Las propiedades se ignoran si la clave o el valor son nulos. |
|||
withMicrosecondAccurateTimestamp(boolean microsecondAccuracy) | false | Defina todos los registros de hora en una precisión de microsegundos cuando este valor sea true. El valor por defecto es una precisión de milisegundos. | ||
withCollectMetrics(boolean collectMetrics) | true |
Defina el rastreador de APM para que recopile las métricas del servidor y genere informes en la nube de APM de OCI. El valor por defecto es true. El usuario puede acceder a todas las métricas de servidor recopiladas desde la telemetría de OCI. Consulte Recopilación de métricas para obtener más información sobre las métricas de servidor recopiladas. |
||
withCollectResources(boolean collectResources) | true |
Define el rastreador de APM para que recopile los recursos del servidor y genere informes en la nube de APM de OCI. Todos los recursos recopilados se utilizan como dimensión para la consulta de datos. Consulte Recopilación de métricas para obtener más información sobre las métricas de servidor recopiladas. |
||
withDaemonChannel(String channel) | El canal del daemon de APM es una conexión de socket entre el rastreador y el daemon. El formato de este valor de propiedad es <host>:<puerto>. Cuando el daemon se inicia con esta propiedad definida, el daemon acepta la conexión del socket y recibe datos en este canal especificado. Cuando el rastreador se inicia con esta definición, se ignora el punto final de carga de datos y los datos solo se envían al daemon mediante este canal de socket. | com.oracle.apm.agent.daemon.channel | com_oracle_apm_agent_daemon_channel | |
build() | Instancie la instancia del rastreador de APM. |
Otras propiedades
Las propiedades se pueden definir como propiedades del sistema Java, variables de entorno o mediante el método de creador Property().
Propiedad del sistema Java | Variable de entorno | Por defecto | Descripción |
---|---|---|---|
com.oracle.apm.agent.daemon.channel | com.oracle.apm.agent.daemon.channel | El canal del daemon de APM es una conexión de socket entre el rastreador y el daemon. El formato de este valor de propiedad es <host>:<puerto>. Cuando el daemon se inicia con esta propiedad definida, el daemon acepta la conexión del socket y recibe datos en este canal especificado. Cuando el rastreador se inicia con esta definición, se ignora el punto final de carga de datos y los datos solo se envían al daemon mediante este canal de socket. | |
com.oracle.apm.agent.data.upload.proxy.url | com_oracle_apm_agent_data_upload_proxy_url | URL del servidor proxy para la conexión del servidor APM de Oracle. Solo está soportado el proxy HTTP. | |
com.oracle.apm.agent.log.filesize.mb | com_oracle_apm_agent_log_filesize_mb | 20mb | Tamaño del archivo log. Puede especificar el tamaño del archivo log mediante esta propiedad. El valor por defecto es "20", es decir, 20 MB será el tamaño de archivo de un archivo log. |
com.oracle.apm.agent.log.rotation.files.count | com_oracle_apm_agent_log_rotation_files_count | 2 | Número de archivos que se pueden crear para almacenar logs con mecanismo de traspaso. Ejemplo: si especificamos "2" como valor de esta propiedad, los logs se almacenarán en el primer archivo hasta que se alcance el límite de tamaño del archivo. Una vez alcanzado el límite de tamaño del archivo, se creará el nuevo archivo y este seguirá almacenando logs. Tras alcanzar el límite de tamaño de archivo en el segundo archivo, suprimirá el primer archivo y comenzará a almacenar logs en el primer archivo. A los archivos se les asignará un nombre adecuado con un sufijo numérico. Por ejemplo, ApmTracer.log y ApmTracer1.log. El valor por defecto es "2", es decir, se utilizarán 2 archivos para almacenar logs. |
com.oracle.apm.agent.logging.level | com_oracle_apm_agent_logging_level | INFO | El nivel de log puede ser SEVERE, WARNING, INFO, DEBUG en orden de menos a más entradas escritas en ApmTracer.log. |
com.oracle.apm.agent.tracer.propagation.type | com_oracle_apm_agent_tracer_propagation_type | B3 |
El rastreador de APM agregará y leerá cabeceras HTTP para conectar los períodos en las llamadas HTTP. Hay varios tipos de formatos de cabecera de propagación que se pueden utilizar para llevarlo a cabo. Si también trabaja con otros tipos de rastreadores, como Zipkin o Jaeger, puede que sea necesario ajustar este valor para que puedan funcionar juntos.
|