Ejemplo: usar CloudWatch métricas personalizadas de Amazon - AWS Elastic Beanstalk

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Ejemplo: usar CloudWatch métricas personalizadas de Amazon

Amazon CloudWatch es un servicio web que le permite supervisar, gestionar y publicar diversas métricas, así como configurar acciones de alarma en función de los datos de las métricas. Puede definir métricas personalizadas para su propio uso y Elastic Beanstalk las enviará a Amazon. CloudWatch Una vez que Amazon CloudWatch contenga tus métricas personalizadas, podrás verlas en la CloudWatch consola de Amazon.

importante

Los scripts de CloudWatch monitoreo de Amazon están obsoletos. El CloudWatch agente ahora ha reemplazado los scripts CloudWatch de monitoreo para recopilar métricas y registros.

Si sigue migrando de los scripts de monitoreo obsoletos al agente y necesita información sobre los scripts de monitoreo, consulte Obsoleto: recopilar métricas mediante los scripts de CloudWatch monitoreo en la Guía del usuario de Amazon EC2.

El CloudWatch agente de Amazon

El CloudWatch agente de Amazon permite la recopilación de CloudWatch métricas y registros tanto de instancias de Amazon EC2 como de servidores locales en todos los sistemas operativos. El agente admite las métricas recopiladas a nivel del sistema. También admite la recopilación de métricas y registros personalizados desde las aplicaciones o servicios. Para obtener más información sobre el CloudWatch agente de Amazon, consulta Cómo recopilar estadísticas y registros con el CloudWatch agente en la Guía del CloudWatch usuario de Amazon.

nota

Los informes de salud mejorados de Elastic Beanstalk cuentan con soporte nativo para publicar una amplia gama de métricas de instancias y entornos en. CloudWatch Para obtener más información, consulte Publicación de métricas personalizadas de un entorno en Amazon CloudWatch.

Archivo de configuración .ebextensions

En este ejemplo, se utilizan los archivos y comandos de un archivo de configuración .ebextensions para configurar y ejecutar el CloudWatch agente de Amazon en la plataforma Amazon Linux 2. El agente está preempaquetado con Amazon Linux 2. Si utiliza otro sistema operativo, es posible que sean necesarios pasos adicionales para instalar el agente. Para obtener más información, consulte Instalación del CloudWatch agente en la Guía del CloudWatch usuario de Amazon.

Para utilizar este ejemplo, guárdelo en un archivo llamado cloudwatch.config que esté situado en un directorio denominado .ebextensions en el nivel superior del directorio del proyecto. A continuación, implemente la aplicación a través de la consola de Elastic Beanstalk (incluya el directorio .ebextensions en el paquete de código fuente) o la CLI de EB.

Para obtener más información sobre los archivos de configuración, consulte Personalización avanzada de entornos con archivos de configuración (.ebextensions).

.ebextensions/cloudwatch.config

files: "/opt/aws/amazon-cloudwatch-agent/bin/config.json": mode: "000600" owner: root group: root content: | { "agent": { "metrics_collection_interval": 60, "run_as_user": "root" }, "metrics": { "namespace": "System/Linux", "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}" }, "metrics_collected": { "mem": { "measurement": [ "mem_used_percent" ] } } } } container_commands: start_cloudwatch_agent: command: /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json

Este archivo tiene dos secciones:

  • files: en esta sección se agrega el archivo de configuración del agente. Indica qué métricas y registros debe enviar el agente a Amazon CloudWatch. En este ejemplo, solo enviamos la métrica mem_used_percent. Para obtener una lista completa de las métricas a nivel del sistema admitidas por el CloudWatch agente de Amazon, consulta las métricas recopiladas por el CloudWatch agente en la Guía del CloudWatch usuario de Amazon.

  • container_commands: esta sección contiene el comando que inicia el agente al transferir el archivo de configuración como parámetro. Para obtener información detallada acerca de container_commands, consulte Comandos de contenedor.

Permisos

Las instancias de su entorno necesitan los permisos de IAM adecuados para poder publicar CloudWatch métricas de Amazon personalizadas mediante el CloudWatch agente de Amazon. Los permisos para las instancias del entorno se conceden agregándolas al perfil de instancias del entorno. Los permisos pueden agregarse al perfil de instancia antes o después de implementar la aplicación.

Para conceder permisos para publicar métricas CloudWatch
  1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.

  2. Seleccione Roles en el panel de navegación.

  3. Seleccione el rol del perfil de instancia del entorno. De forma predeterminada, cuando se crea un entorno con la consola de Elastic Beanstalk o la CLI de EB, el rol es aws-elasticbeanstalk-ec2-role.

  4. Elija la pestaña Permisos.

  5. Bajo Permissions Policies (Políticas de permisos), en la sección Permissions (Permisos), elija Attach policies (Adjuntar políticas).

  6. En Adjuntar permisos, selecciona la política AWS gestionada CloudWatchAgentServerPolicy. Haga clic en Attach Policy (Adjuntar política).

Para obtener más información acerca de la administración de políticas, consulte Uso de las políticas en la Guía del usuario de IAM.

Visualización de las métricas en la CloudWatch consola

Tras implementar el archivo de CloudWatch configuración en su entorno, consulte la CloudWatch consola de Amazon para ver las métricas. Las métricas personalizadas se ubicarán en el espacio de nombres CWAgent.

Para obtener más información, consulta Cómo ver las métricas disponibles en la Guía del CloudWatch usuario de Amazon.