Vincule el agente de Java de Application Real-Time Monitoring Service (ARMS) a su aplicación para recopilar trazas, topología de la aplicación, datos de transacciones anómalas y lentas, así como análisis de SQL.
Para las aplicaciones desplegadas en clústeres de Container Service for Kubernetes (ACK), instale el componente ack-onepilot en su lugar. Consulte Automatically install an ARMS agent in ACK o Automatically install an ARMS agent in an open-source Kubernetes cluster.
Requisitos previos
Antes de empezar, asegúrese de que:
Su red cumple con los ARMS agent connectivity requirements
Su versión de JDK es supported by Application Monitoring
La memoria heap máxima de la JVM (
-Xmx) es de 256 MB como mínimo
Instalación del agente de ARMS
Paso 1: Descargar el agente
Inicie sesión en la consola de ARMS.
En el panel de navegación izquierdo, haga clic en Integration Center.
Haga clic en la tarjeta Java Application Monitor y luego seleccione Manual Installation.
-
Descargue el paquete del agente mediante uno de los siguientes métodos:
Desde la consola: En el panel Java Application Monitor, siga las indicaciones de descarga.
Desde la línea de comandos: Ejecute el comando
wgetcorrespondiente a su región. Seleccione su región en la siguiente tabla.
Paso 2: Extraer el paquete del agente
Extraiga el archivo ZIP descargado en un directorio de trabajo:
unzip AliyunJavaAgent.zip -d <working-directory>
Reemplace <working-directory> con el directorio donde desea instalar el agente; por ejemplo, /opt/arms.
Paso 3: Configurar la clave de licencia y el nombre de la aplicación
El agente de ARMS requiere dos parámetros para reportar datos:
|
Parameter |
Description |
Where to find it |
|
|
Autentica el agente con su cuenta de ARMS |
Cópiela desde el panel Java Application Monitor o llame a la API DescribeTraceLicenseKey |
|
|
Identifica su aplicación en la consola de ARMS. En una arquitectura distribuida, varias instancias pares comparten el mismo nombre. |
Elija un nombre; por ejemplo, |
Pase estos parámetros de una de las dos formas siguientes:
Opción A: Pasar como argumentos de la JVM (recomendado)
Agregue -Darms.licenseKey y -Darms.appName directamente en el comando de inicio. Consulte el Paso 4 para ver el comando completo.
Opción B: Usar un archivo de configuración
Este enfoque resulta útil cuando varias aplicaciones comparten un único script de inicio.
Primero, compruebe la versión del agente en el archivo version dentro del directorio extraído.
Agente de ARMS V4.0.0 o posterior:
Cree un archivo llamado arms-agent.properties en el directorio del agente:
arms.licenseKey=<your-license-key>
arms.appName=<your-app-name>
Luego, agregue una de las siguientes opciones a su comando de inicio:
Argumento de la JVM:
-Dotel.javaagent.configuration-file=/path/to/arms-agent.propertiesVariable de entorno:
OTEL_JAVAAGENT_CONFIGURATION_FILE=/path/to/arms-agent.properties
Agente de ARMS anterior a la V4.0.0:
Edite el archivo arms-agent.config en el directorio del agente:
arms.licenseKey=<your-license-key>
arms.appName=<your-app-name>
Para obtener más información sobre otros parámetros del agente, consulte Modify ARMS agent parameters and data reporting regions.
Paso 4: Agregar el agente al comando de inicio
Agregue la opción -javaagent a su comando de inicio. La sintaxis varía según el entorno de ejecución.
Reemplace los siguientes marcadores de posición con sus valores reales:
|
Placeholder |
Description |
Example |
|
|
Directorio donde extrajo el agente |
|
|
|
Su clave de licencia de ARMS |
|
|
|
Nombre de la aplicación para ARMS |
|
Spring Boot o java -jar
Coloque -javaagent antes del argumento -jar:
java -javaagent:/<working-directory>/AliyunJavaAgent/aliyun-java-agent.jar \
-Darms.licenseKey=<your-license-key> \
-Darms.appName=<your-app-name> \
-jar demoApp.jar
Tomcat
Agregue la siguiente línea a {TOMCAT_HOME}/bin/setenv.sh:
JAVA_OPTS="$JAVA_OPTS -javaagent:/<working-directory>/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey=<your-license-key> -Darms.appName=<your-app-name>"
Si setenv.sh no existe, añada la misma configuración al parámetro JAVA_OPTS en {TOMCAT_HOME}/bin/catalina.sh. Consulte la línea 256 de catalina.sh como referencia.
Jetty
Añada lo siguiente a {JETTY_HOME}/start.ini:
--exec
-javaagent:/<working-directory>/AliyunJavaAgent/aliyun-java-agent.jar
-Darms.licenseKey=<your-license-key>
-Darms.appName=<your-app-name>
Varias instancias en el mismo servidor
Para ejecutar varias instancias de la misma aplicación en un solo servidor, agregue -Darms.agentId con un valor único para diferenciar los procesos de la JVM:
java -javaagent:/<working-directory>/AliyunJavaAgent/aliyun-java-agent.jar \
-Darms.licenseKey=<your-license-key> \
-Darms.appName=<your-app-name> \
-Darms.agentId=001 \
-jar demoApp.jar
Para versiones del agente anteriores a la V2.7.3.5, reemplace
AliyunJavaAgent/aliyun-java-agent.jarporArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar. Actualice a la versión más reciente lo antes posible.En Windows, reemplace
/por\en las rutas y use archivos.baten lugar de archivos.sh.Para habilitar Application Security (disponible a partir de la V2.7.1.4), agregue
-Darms.appsec.enable=true. Consulte Application Security billing para conocer los precios.
Paso 5: Reiniciar la aplicación
Reinicie su aplicación Java para que el agente surta efecto.
(Opcional) Instalación con Docker
Utilice el siguiente Dockerfile como plantilla para instalar el agente de ARMS en una imagen de Docker:
# Replace <your-base-image:tag> with your image
FROM <your-base-image:tag>
WORKDIR /root/
# Download the agent (use the URL for your region; see Step 1)
RUN wget "http://arms-apm-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/AliyunJavaAgent.zip" -O AliyunJavaAgent.zip
RUN unzip AliyunJavaAgent.zip -d /root/
# Set credentials as environment variables
ENV arms_licenseKey=<your-license-key>
ENV arms_appName=<your-app-name>
# Inject the agent via JAVA_TOOL_OPTIONS
ENV JAVA_TOOL_OPTIONS ${JAVA_TOOL_OPTIONS} '-javaagent:/root/AliyunJavaAgent/aliyun-java-agent.jar -Darms.licenseKey='${arms_licenseKey}' -Darms.appName='${arms_appName}
# Verify the environment variable
RUN env | grep JAVA_TOOL_OPTIONS
# Add your application-specific instructions below
# ...
Comprobar la instalación
Después de reiniciar la aplicación, el agente comienza a reportar datos en aproximadamente un minuto.
En la consola de ARMS, vaya a Application Monitoring > Application List.
Confirme que su aplicación aparece en la lista y que se están enviando registros de datos.
Si su aplicación no aparece después de unos minutos, compruebe lo siguiente:
|
Issue |
Action |
|
Credenciales incorrectas |
Compruebe que los valores de |
|
Ruta del agente incorrecta |
Confirme que la ruta de |
|
Aplicación no reiniciada |
Reinicie la aplicación después de agregar la configuración del agente. |
|
Conectividad de red |
Compruebe que el servidor pueda alcanzar el endpoint de ARMS a través de la red. Consulte Network configurations. |
|
Fallo en el inicio del agente |
Revise los registros de inicio de la aplicación en busca de mensajes de inicialización del agente de ARMS. Busque líneas que contengan |
Para obtener más orientación sobre solución de problemas, consulte Application Monitoring FAQ.