Métricas, espacios de nombres y dimensiones de CloudWatch
Comprenda las métricas integradas de los servicios de AWS, publique métricas personalizadas desde su aplicación y filtre por dimensiones para analizar recursos específicos
Métricas, espacios de nombres y dimensiones de CloudWatch es una lección gratuita de AWS Solutions Architect en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de AWS Solutions Architect, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de AWS Solutions Architect incluye 4 lecciones en total.
¿Qué es Amazon CloudWatch?
Amazon CloudWatch es el servicio unificado de observabilidad de AWS que recopila métricas, registros y trazas de sus recursos y aplicaciones de AWS. Le proporciona una visión completa del estado de su infraestructura, lo que permite detectar anomalías, configurar alarmas y reaccionar automáticamente ante cambios operativos. CloudWatch está profundamente integrado con casi todos los servicios de AWS y es la principal herramienta de monitorización evaluada en el examen SAA-C03.
Comprender las métricas de CloudWatch
Una métrica de CloudWatch es un conjunto ordenado temporalmente de puntos de datos que representa el valor de un aspecto medible de un recurso a lo largo del tiempo; por ejemplo, CPUUtilization de una instancia de EC2 medido cada minuto. Las métricas se identifican mediante su espacio de nombres, nombre y dimensiones. AWS publica automáticamente cientos de métricas integradas, y puede publicar sus propias métricas personalizadas desde el código de su aplicación o mediante scripts.
Espacios de nombres: organizar las métricas
Un espacio de nombres es un contenedor de métricas de CloudWatch que evita colisiones de nombres entre métricas procedentes de distintas fuentes. Los servicios de AWS utilizan espacios de nombres como AWS/EC2, AWS/RDS, AWS/Lambda y AWS/S3. Al publicar métricas personalizadas, puede elegir su propio espacio de nombres, por ejemplo MyApp/OrderService. Las métricas de distintos espacios de nombres están completamente aisladas entre sí, aunque compartan el mismo nombre.
# List all namespaces in your account
aws cloudwatch list-metrics \
--query 'Metrics[].Namespace' \
--output text | tr '\t' '\n' | sort -u
# List metrics in the AWS/EC2 namespace
aws cloudwatch list-metrics \
--namespace AWS/EC2 \
--query 'Metrics[].MetricName' \
--output text | tr '\t' '\n' | sort -uDimensiones: filtrar métricas
Las dimensiones son pares clave-valor que identifican de forma única una métrica dentro de un espacio de nombres. Por ejemplo, en el espacio de nombres AWS/EC2, CPUUtilization se puede filtrar mediante la dimensión InstanceId=i-0123456789abcdef0 para consultar una instancia específica, o mediante AutoScalingGroupName=my-asg para consultar la métrica agregada de un grupo de instancias. Una métrica puede tener hasta 30 dimensiones, y AWS predefine qué dimensiones están disponibles para cada métrica de servicio.
# Get CPU utilization for a specific EC2 instance
aws cloudwatch get-metric-statistics \
--namespace AWS/EC2 \
--metric-name CPUUtilization \
--dimensions Name=InstanceId,Value=i-0123456789abcdef0 \
--start-time 2024-01-01T00:00:00Z \
--end-time 2024-01-01T01:00:00Z \
--period 300 \
--statistics AverageMonitorización estándar frente a detallada
De forma predeterminada, los servicios de AWS publican métricas en CloudWatch a intervalos de 5 minutos (monitorización estándar) sin coste adicional. Para cargas de trabajo sensibles al tiempo, puede activar la monitorización detallada para obtener una granularidad de 1 minuto. La monitorización detallada está disponible para EC2, Auto Scaling, ELB, RDS y otros servicios, y genera cargos adicionales de CloudWatch. Para el examen SAA-C03, recuerde que las políticas de Auto Scaling que utilizan el escalado por pasos dependen de alarmas de CloudWatch que funcionan mejor con métricas de 1 minuto.
# Enable detailed (1-minute) monitoring for an EC2 instance
aws ec2 monitor-instances \
--instance-ids i-0123456789abcdef0
# Verify monitoring state
aws ec2 describe-instance-status \
--instance-ids i-0123456789abcdef0 \
--query 'InstanceStatuses[].Monitoring'Publicar métricas personalizadas
Puede enviar métricas personalizadas a CloudWatch desde cualquier aplicación mediante la API put-metric-data o CloudWatch Agent. Entre las métricas personalizadas habituales se incluyen los KPI empresariales (pedidos por minuto), la latencia a nivel de aplicación, la profundidad de las colas y las tasas de error. Las métricas personalizadas se conservan durante 15 meses con una resolución variable y se facturan por métrica y por mes. También se admiten métricas personalizadas de alta resolución, con una granularidad de 1 segundo, a un coste mayor.
# Publish a custom metric from the CLI
aws cloudwatch put-metric-data \
--namespace 'MyApp/OrderService' \
--metric-name 'OrdersProcessedPerMinute' \
--value 47 \
--unit Count \
--dimensions Environment=Production,Region=us-east-1
# Publish from application code (Python boto3)
# cloudwatch.put_metric_data(
# Namespace='MyApp/OrderService',
# MetricData=[{'MetricName': 'ErrorRate', 'Value': 0.5, 'Unit': 'Percent'}]
# )CloudWatch Agent para métricas de EC2
CloudWatch Agent es un agente de software que se instala en instancias de EC2 y servidores locales para recopilar métricas que no están disponibles mediante el hipervisor integrado de EC2, como la utilización de memoria, el espacio en disco y las conexiones de red. El agente también recopila registros y los envía a CloudWatch Logs. La utilización de memoria es un escenario habitual en el examen: NO es una métrica predeterminada de EC2 y DEBE recopilarse mediante CloudWatch Agent.
# Install and start the CloudWatch Agent on Amazon Linux 2
sudo yum install -y amazon-cloudwatch-agent
# Use the wizard to generate a config
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
# Start the agent with the generated config
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl \
-a fetch-config \
-m ec2 \
-s \
-c ssm:/AmazonCloudWatch-linuxMatemáticas de métricas y detección de anomalías
Las matemáticas de métricas permiten crear nuevas series temporales realizando operaciones aritméticas sobre métricas existentes, sin almacenar el resultado como una métrica independiente. Por ejemplo, puede calcular directamente la tasa de errores como Errors / Requests * 100 en una expresión de un panel de CloudWatch. La detección de anomalías aplica aprendizaje automático a los datos históricos de las métricas para crear bandas de valores esperados. Puede crear alarmas que se activen cuando una métrica se desvíe fuera de esas bandas, incluso si no existe un umbral fijo.
# Get metric data using metric math
aws cloudwatch get-metric-data \
--metric-data-queries '[
{"Id":"e1","Expression":"m1/m2*100","Label":"ErrorRate%"},
{"Id":"m1","MetricStat":{"Metric":{"Namespace":"MyApp","MetricName":"Errors"},"Period":60,"Stat":"Sum"}},
{"Id":"m2","MetricStat":{"Metric":{"Namespace":"MyApp","MetricName":"Requests"},"Period":60,"Stat":"Sum"}}
]' \
--start-time 2024-01-01T00:00:00Z \
--end-time 2024-01-01T01:00:00ZPeriodos de retención de métricas
CloudWatch almacena las métricas durante distintos periodos según su resolución: los puntos de datos con una resolución de 1 segundo se conservan durante 3 horas, los datos de 1 minuto durante 15 días, los datos de 5 minutos durante 63 días y los datos de 1 hora durante 15 meses. CloudWatch agrega automáticamente los datos de alta resolución en datos de menor resolución con el paso del tiempo. Esto significa que, si necesita analizar tendencias a largo plazo, verá promedios de 1 hora, no las lecturas originales de 1 minuto de hace varios meses.
Consultar métricas en la consola de CloudWatch
La consola de CloudWatch proporciona Metrics Explorer y Metrics browser, donde puede seleccionar cualquier combinación de espacio de nombres, métrica y dimensión, y visualizar los datos a lo largo del tiempo. Puede superponer varias métricas en un solo gráfico, cambiar los periodos de agregación y añadirlas a los paneles. Para el acceso mediante programación, las API GetMetricStatistics y GetMetricData devuelven puntos de datos sin procesar o estadísticas agregadas (Average, Sum, Minimum, Maximum, SampleCount).
# Get average CPU for all instances in an ASG over the last hour
aws cloudwatch get-metric-statistics \
--namespace AWS/EC2 \
--metric-name CPUUtilization \
--dimensions Name=AutoScalingGroupName,Value=my-asg \
--start-time $(date -u -d '1 hour ago' +%Y-%m-%dT%H:%M:%SZ) \
--end-time $(date -u +%Y-%m-%dT%H:%M:%SZ) \
--period 300 \
--statistics Average MaximumMétricas clave de EC2 y RDS
Para el examen SAA-C03, conozca estas métricas fundamentales: EC2: CPUUtilization, NetworkIn/Out, DiskReadOps/WriteOps (solo el almacenamiento de instancia); no disponibles de forma predeterminada en EC2: memoria y espacio en disco (utilice CloudWatch Agent). RDS: DatabaseConnections, FreeStorageSpace, ReadLatency, WriteLatency, ReplicaLag. ELB: RequestCount, TargetResponseTime, UnHealthyHostCount. Lambda: Invocations, Errors, Duration, Throttles, ConcurrentExecutions.
Comprobación rápida
Compruebe su comprensión de los conceptos de AWS Solutions Architect (SAA-C03) tratados en esta lección.
Resumen de la lección
En esta lección ha aprendido que los espacios de nombres organizan las métricas por servicio y evitan colisiones de nombres; las dimensiones filtran las métricas para recursos específicos, como una única instancia de EC2 o un ASG; y la utilización de memoria no es una métrica predeterminada de EC2: necesita CloudWatch Agent para recopilarla. A continuación, exploraremos las alarmas de CloudWatch y las alarmas compuestas para las alertas automatizadas.
Preguntas frecuentes
¿La lección «Métricas, espacios de nombres y dimensiones de CloudWatch» es gratis?
Sí — el texto completo de «Métricas, espacios de nombres y dimensiones de CloudWatch» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de AWS Solutions Architect, actualiza a CoddyKit PRO. El curso de AWS Solutions Architect incluye 4 lecciones en total.
¿Qué aprenderé en «Métricas, espacios de nombres y dimensiones de CloudWatch»?
Comprenda las métricas integradas de los servicios de AWS, publique métricas personalizadas desde su aplicación y filtre por dimensiones para analizar recursos específicos Practicas AWS Solutions Architect con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar AWS Solutions Architect?
No se requiere experiencia previa. AWS Solutions Architect en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Métricas, espacios de nombres y dimensiones de CloudWatch»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de AWS Solutions Architect?
Sí. Cada lección de AWS Solutions Architect incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Métricas, espacios de nombres y dimensiones de CloudWatch
- Alarmas y alarmas compuestas de CloudWatch
- Logs y Log Insights de CloudWatch
- Paneles de CloudWatch y Container Insights