Publicado en: May 13, 2020

Nos complace anunciar la incorporación del switch -javaagent al generador de perfiles de Amazon CodeGuru, que permite a los clientes iniciar el agente de perfiles a través de una línea de comandos. Gracias a este nuevo cambio, ya no es necesario modificar el código de la aplicación o agregar dependencias para ejecutar el agente.  

El generador de perfiles de Amazon CodeGuru encuentra las líneas de código que utilizan más recursos y le muestra dónde emplea el tiempo la aplicación en forma de visualizaciones completas e interactivas. También busca ineficiencias en sus aplicaciones en directo, en base a problemas de rendimiento conocidos, y brinda recomendaciones para solucionarlas.

La incorporación con el switch -javaagent se realiza en dos pasos:

  • Paso 1: Configure los permisos de autorización de la aplicación y 
  • Paso 2: Ejecute su aplicación con el agente de perfiles a través del switch -javaagent (después de descargar el JAR independiente del agente)

Los beneficios clave principales de iniciar el agente a través del switch -javaagent es que ahora puede generar perfiles de aplicaciones existentes sin necesidad de recompilar o cambiar el código, tampoco necesita implementar el agente en el jar de la aplicación ni preocuparse de versiones incompatibles del SDK de Amazon. Además, ahora puede habilitar la generación de perfiles en un amplio rango de entornos de alojamiento.  

Si planea iniciar el agente de generación de perfiles como ha hecho hasta ahora, todavía es posible iniciarlo desde el código. Esto puede ser útil en caso de quiera disponer de autenticación personalizada, un control más detallado, configurar actualizaciones de dependencias, etc. Además, podrá seguir utilizando en el futuro cualquiera de las opciones para iniciar el agente de generación de perfiles, puesto que seguiremos ofreciendo el agente de Java del generador de perfiles de CodeGuru tanto como un JAR de agente de Java independiente, como una dependencia JAR que puede agregar a las aplicaciones tal y como hace a día de hoy. 

Para comenzar a ejecutar el agente mediante el switch de línea de comandos -javaagent, necesita agregar el siguiente switch de línea de comandos al iniciar la aplicación basada en JVM:

-javaagent:AmazonCodeGuruJavaProfiler-1.0.jar=groupName=profiling-group-name

Por ejemplo:

java -javaagent:AmazonCodeGuruJavaProfiler-1.0.jar=groupName=profiling-group-name \
-jar MyApplication.jar

Entre bastidores, el generador de perfiles de CodeGuru utiliza la API de instrumentación Java para iniciar el generador de perfiles antes que se llame a cualquier código de aplicación (p. ej., antes de que se llame a main()). De esta forma, el generador de perfiles se configura con las variables de entorno o los parámetros de la línea de comandos, y no hay necesidad de modificar el código fuente. 

Para obtener más información acerca de Amazon CodeGuru, consulte la página de características. Para obtener más información acerca de cómo comenzar, consulte la documentación. Para obtener más información acerca de la automatización de las revisiones de código y los perfiles de aplicación mediante Amazon CodeGuru, consulte el blog de aprendizaje automático (ML) de AWS. Para contactar al equipo de servicios, visite el foro de desarrolladores de Amazon CodeGuru.