Aspectos generales

P: ¿Qué es Amazon CodeGuru?

Amazon CodeGuru es un servicio totalmente administrado que lo ayuda a mejorar de forma proactiva la calidad del código y el rendimiento de las aplicaciones con recomendaciones inteligentes.

P: ¿Qué puedo hacer con Amazon CodeGuru?

Amazon CodeGuru usa modelos de aprendizaje automático y prácticas recomendadas adquiridas para ofrecer recomendaciones inteligentes que mejoran la calidad del código y optimizan el rendimiento de las aplicaciones. Amazon CodeGuru incluye el revisor y el generador de perfiles de CodeGuru. El revisor de CodeGuru analiza las solicitudes de incorporación de cambios en el código en los repositorios de código, y el generador de perfiles de CodeGuru analiza el rendimiento de las aplicaciones a medida que se ejecutan.

El revisor de CodeGuru detecta automáticamente los problemas durante las revisiones de código antes de que lleguen a la producción, lo que le permite detectar los problemas de forma proactiva antes de que se implementen en la producción, además de mejorar la calidad y el rendimiento general de la aplicación. El generador de perfiles de CodeGuru puede identificar si la aplicación consume una capacidad excesiva de CPU en una rutina de registro en lugar de ejecutar la lógica empresarial principal. Está diseñado para generar perfiles de la aplicación de forma permanente en la producción, con un consumo mínimo de recursos.

P: ¿Cómo puedo comenzar a utilizar Amazon CodeGuru?

Amazon CodeGuru está disponible de manera pública en vista previa. Puede comenzar ahora mismo en la consola de Amazon CodeGuru.

Para comenzar a utilizar el revisor de Amazon CodeGuru, inicie sesión en la consola del revisor de CodeGuru, donde puede asociar un repositorio de código existente en GitHub o AWS CodeCommit. Una vez configurado por única vez, el revisor de CodeGuru comienza a analizar el código y a proporcionar recomendaciones para mejorarlo directamente en la solicitud de incorporación de cambios o en el repositorio de código.

También puede comenzar a generar perfiles de sus aplicaciones en cuestión de minutos. Para comenzar a utilizar el generador de perfiles de Amazon CodeGuru, inicie sesión en la consola del generador de perfiles de CodeGuru, donde podrá configurar su aplicación. Siga las instrucciones paso a paso y utilice el código que proporciona el generador de perfiles de CodeGuru para instalar un agente pequeño y de perfil bajo en su aplicación. Puede permitir que el generador de perfiles de CodeGuru se ejecute de manera permanente para detectar de forma proactiva los problemas de rendimiento en sus aplicaciones en funcionamiento.

P: ¿En qué regiones de AWS se encuentra disponible Amazon CodeGuru?

Para ver la lista de las regiones de AWS admitidas, consulte la tabla de regiones de AWS, que contiene información acerca de la infraestructura global de AWS. Para obtener más información, consulte Regiones y puntos de enlace en la Referencia general de AWS.

Revisor de Amazon CodeGuru

P: ¿Qué es el revisor de Amazon CodeGuru?

El revisor de Amazon CodeGuru es un servicio automatizado de revisión de código que identifica defectos graves y discrepancias con las prácticas recomendadas de AWS para el código basado en Java. Analiza las líneas de código dentro de una solicitud de incorporación de cambios o repositorio de código y brinda recomendaciones inteligentes basadas en estándares aprendidos de los proyectos de código abierto principales, así como de la base de código de Amazon. El revisor de CodeGuru se integra perfectamente con los flujos de trabajo de revisión de código existentes en sistemas de control de código fuente de uso general, como AWS CodeCommit y GitHub, y proporciona recomendaciones prácticas para mejorar la calidad del código.

P: ¿Qué lenguajes de programación y repositorios de código fuente admite?

En la actualidad, el revisor de Amazon CodeGuru admite el código Java almacenado en los repositorios de GitHub y AWS CodeCommit.

P: ¿Qué tipo de problemas detecta el revisor de Amazon CodeGuru?

El revisor de Amazon CodeGuru comprueba si hay problemas de simultaneidad, posibles condiciones de carrera, entradas sin corregir, manejo inapropiado de datos confidenciales (como credenciales) y pérdida de recursos, y también detecta las condiciones de carrera en el código simultáneo.

P: ¿Cómo puedo comenzar a utilizar el revisor de Amazon CodeGuru?

Vaya a la consola de Amazon CodeGuru para integrar las recomendaciones del revisor directamente en las solicitudes de incorporación de cambios en el código. Puede visitar la consola de CodeGuru y seguir los pasos para asociar sus repositorios de AWS CodeCommit y GitHub y comenzar a recibir las recomendaciones del revisor de CodeGuru. El revisor de CodeGuru necesitará acceso de solo lectura y la capacidad para publicar comentarios acerca de las solicitudes de incorporación de cambios. Una vez habilitado, el revisor de CodeGuru ofrecerá automáticamente recomendaciones inteligentes, como comentarios acerca de las solicitudes de incorporación de cambios generadas para los repositorios conectados.

P: ¿Tiene acceso el revisor de Amazon CodeGuru a mi código?

El revisor de Amazon CodeGuru necesita acceso de solo lectura a su código para generar recomendaciones. Su confianza, privacidad y la seguridad de su contenido son nuestra más absoluta prioridad, por lo que implementamos los controles adecuados, incluido el cifrado de la información en tránsito, con el fin de evitar el acceso no autorizado al contenido o su divulgación y asegurarnos de que nuestro uso cumple con los compromisos que tenemos con usted. Consulte las Preguntas frecuentes acerca de la privacidad de datos para obtener más información.

P: ¿Conserva el revisor de Amazon CodeGuru una copia de mi código?

No, el revisor de Amazon CodeGuru no almacena su código fuente.

P: ¿De qué manera se entrena el revisor de Amazon CodeGuru para proporcionar recomendaciones inteligentes?

El revisor de Amazon CodeGuru se entrena con modelos de aprendizaje automático supervisado y minería por reglas que utilizan una combinación de regresión logística y redes neuronales.

Por ejemplo, durante el entrenamiento para detectar discrepancias con las prácticas recomendadas de AWS y de la industria, el revisor de CodeGuru extrae bases de código de Amazon usando técnicas de búsqueda y modelos susceptibles a las localidades para las solicitudes de incorporación de cambios que incluyen llamadas a la API de AWS. Examina los cambios de código destinados a mejorar la calidad del código y los compara con los datos de la documentación. El resultado es la creación de un conjunto nuevo de reglas que el revisor le ofrece como prácticas recomendadas cuando revisa el código.

Durante el entrenamiento para detectar la pérdida de recursos y la exposición de datos confidenciales, analiza el código por completo de todas las rutas de código que utilizan el recurso o los datos confidenciales, crea un conjunto de características que las representan y luego las utiliza como entradas para los modelos de regresión logística y las redes neuronales convolucionales (CNN).

Tanto para los modelos basados en reglas como para los basados en el aprendizaje automático, el revisor de CodeGuru utiliza la información que usted proporciona como etiquetas y mejora de forma iterativa la calidad de los detectores de código.

Generador de perfiles de Amazon CodeGuru

P: ¿Qué es el generador de perfiles de Amazon CodeGuru?

El generador de perfiles de Amazon CodeGuru ayuda a los desarrolladores a comprender fácilmente el comportamiento del tiempo de ejecución de sus aplicaciones, mejorar el rendimiento y reducir los costos informáticos. Analiza el perfil de tiempo de ejecución de la aplicación y ofrece recomendaciones inteligentes y visualizaciones que guían a los desarrolladores para que puedan mejorar el rendimiento de las partes más relevantes del código.

P: Ya tengo un proceso completo de depuración y registro integrado en el código. ¿Tengo que generar perfiles de todas maneras?

Si bien el enfoque de monitoreo “descendente” (registro y depuración) es una buena práctica, no es conveniente para analizar la eficiencia del código. El registro del tiempo de ejecución solo funciona para un conjunto limitado de situaciones, y su implementación lleva mucho tiempo. Aquí es donde entra en juego el monitoreo de tiempo de ejecución “ascendente”: el generador de perfiles de Amazon CodeGuru está diseñado para recopilar datos acerca de todo lo que ocurrió en el comportamiento de esa aplicación, independientemente de la situación. El generador de perfiles de CodeGuru utiliza una base de conocimiento de las ineficiencias de rendimiento más comunes para detectar automáticamente patrones de código en la aplicación en funcionamiento que afectan su rendimiento. Los desarrolladores pueden seguir las recomendaciones proporcionadas para solucionar los problemas.

P: ¿En qué se diferencia el generador de perfiles de CodeGuru de las APM tradicionales y de los generadores de perfiles independientes?

Las herramientas de administración de rendimiento de aplicaciones tradicionales brindan datos útiles acerca del monitoreo, el seguimiento y el rendimiento de las aplicaciones. El generador de perfiles de Amazon CodeGuru complementa estas capacidades de la APM al proporcionar visualización de los datos de tiempo de ejecución de la aplicación, así como recomendaciones prácticas para los problemas de rendimiento que detecta. El generador de perfiles de CodeGuru le permite ver fácilmente las partes del código que presentan una mayor oportunidad para la optimización del rendimiento y recibir orientación sobre cómo abordarlas sin necesidad de tener un conocimiento amplio en ingeniería de rendimiento. Además, algunos generadores de perfiles independientes están diseñados para funcionar solo en entornos de prueba, mientras que el generador de perfiles de CodeGuru está diseñado para funcionar de forma permanente en la producción, durante las cargas de tráfico de producción y sin afectar el funcionamiento de la aplicación. Esto es útil cuando se trata de solucionar problemas operativos en la etapa de producción, incluso cuando se utilizan hosts sin sistema operativo.

P: ¿Sobre qué tipos de aplicaciones se pueden generar perfiles?

El generador de perfiles de Amazon CodeGuru funciona con aplicaciones alojadas en Amazon EC2, aplicaciones en contenedores que se ejecutan en Amazon ECS y Amazon EKS, así como aplicaciones sin servidor que se ejecutan en AWS Fargate.

P: ¿Qué lenguajes de programación admite?

En la actualidad, el generador de perfiles de Amazon CodeGuru es compatible con aplicaciones Java.

P: ¿Cómo funciona el generador de perfiles de CodeGuru?

El generador de perfiles de CodeGuru tiene tres partes: un agente, el servicio de generador de perfiles y recomendaciones inteligentes. El agente se ejecuta como un subproceso en curso como parte de la aplicación. Toma datos de cada una de las instancias de servicio que ejecutan el agente y los envía al servicio de generador de perfiles cada 5 minutos, donde se agrupan. El generador de perfiles de CodeGuru publica los datos del perfil en gráficos de llama interactivos que le permiten visualizar el rendimiento de la aplicación. También analiza los datos incluidos en perfiles de manera permanente y los compara con las prácticas recomendadas de ingeniería de rendimiento y de Amazon, y le envía recomendaciones inteligentes de forma proactiva cuando se detectan problemas de rendimiento.

P: ¿Qué es un grupo de perfiles?

Un grupo de perfiles es una agrupación lógica que usted crea. Representa el límite de una aplicación. Por ejemplo, en una arquitectura de microservicios, un grupo de perfiles comprendería los perfiles de los microservicios que se le han asignado y generaría un perfil para todos ellos.

Product-Page_Standard-Icons_01_Product-Features_SqInk
Más información acerca de los precios

Visite la página de precios de Amazon CodeGuru.

Más información 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
Inscríbase para obtener una cuenta gratuita

Obtenga acceso instantáneo a la capa gratuita de AWS. 

Regístrese 
Product-Page_Standard-Icons_03_Start-Building_SqInk
Comience a crear en la consola

Comience a crear con Amazon CodeGuru en la consola de administración de AWS.

Iniciar sesión