SAP-C02

Deep Dive

Todas las guías
Practicar ahora
D3 · Mejora continua de soluciones

Observabilidad avanzada: CloudWatch, X-Ray y Container Insights

La observabilidad es la capacidad de entender el estado interno de un sistema a partir de sus outputs externos. En el SAP-C02, las preguntas de observabilidad van más allá de CloudWatch básico — evalúan arquitecturas de monitoreo completas para sistemas distribuidos a escala.

Icon-Architecture/48/Arch_Amazon-CloudWatch_48

Los 3 pilares de observabilidad en AWS

📊

Métricas

Datos numéricos agregados en el tiempo. ¿Cuánto? ¿Qué tan rápido? ¿Cuántos errores?

  • CloudWatch Metrics (nativas y custom)
  • CloudWatch Embedded Metrics (EMF)
  • Container Insights
  • Lambda Insights
📝

Logs

Registros de eventos con contexto completo. ¿Qué pasó exactamente y cuándo?

  • CloudWatch Logs
  • CloudWatch Logs Insights (queries)
  • Log Subscriptions a Kinesis/Lambda
  • S3 export para análisis con Athena
🔍

Trazas

Seguimiento de requests a través de múltiples servicios. ¿Dónde está la latencia?

  • AWS X-Ray
  • CloudWatch ServiceLens (combina trazas + métricas + logs)
  • AWS Distro for OpenTelemetry (ADOT)
Icon-Architecture/48/Arch_Amazon-CloudWatch_48

CloudWatch avanzado — más allá del monitoreo básico

Métricas avanzadas

Custom MetricsPublish vía PutMetricData API. Granularidad: 1s (high resolution) o 1 min. Para métricas de negocio (órdenes por minuto).
Metric MathOperaciones matemáticas sobre métricas: ratios, sumas, tasas de error. Ej: ErrorRate = Errors / Requests * 100.
Anomaly DetectionModelo ML que aprende el patrón histórico de una métrica y alerta cuando se desvía. Sin definir umbrales estáticos.
Composite AlarmsCombinan múltiples alarmas con lógica AND/OR. Reduce el "alarm noise" — solo alerta cuando múltiples condiciones se cumplen simultáneamente.
Metric StreamsStream de métricas en tiempo real a Kinesis Firehose → S3 o destinos de terceros (Datadog, New Relic).

CloudWatch Logs avanzado

Log InsightsLenguaje de query propio para analizar logs estructurados. Más rápido y barato que exportar a Athena para queries ad-hoc.
SubscriptionsStreams de logs en tiempo real a Lambda o Kinesis para procesamiento o transformación.
Log Groups RetentionConfigura retención de 1 día a forever. Sin configurar retención los logs nunca expiran (costo indefinido).
Cross-Account SharingEnviar logs de cuentas miembro a una cuenta centralizada de logs via Subscription Filters + Kinesis.
Contributor InsightsIdentifica los "top contributors" de logs — ej: las IPs con más errores 429, las URLs más lentas.
Icon-Architecture/48/Arch_Amazon-CloudWatch_48

Container Insights y Lambda Insights

Container Insights

Recopila métricas y logs de contenedores en ECS, EKS y Kubernetes. Agrega datos a nivel de cluster, nodo, pod y contenedor individual.

  • CPU/Memoria/Red/Almacenamiento por contenedor, pod y nodo
  • ECS: métricas de Tasks, Services y Clusters
  • EKS: integrado con CloudWatch Agent como DaemonSet
  • Performance logs en CloudWatch Logs para diagnóstico detallado
  • Requiere CloudWatch Agent o Fluent Bit en los nodos worker

Lambda Insights

Monitoreo de rendimiento avanzado para funciones Lambda. Diagnostica problemas de duración, throttling y errores de memoria.

  • CPU total time, memoria usada vs asignada, init duration
  • Detecta funciones con out-of-memory frecuente
  • Network bytes sent/received por invocación
  • Se habilita como Lambda Layer — sin cambios de código
  • Datos en CloudWatch Logs con formato EMF (Embedded Metrics Format)
Icon-Architecture/48/Arch_AWS-X-Ray_48

AWS X-Ray — trazabilidad distribuida

X-Ray genera un mapa visual de tu arquitectura de microservicios mostrando cómo los requests fluyen entre servicios, dónde está la latencia y qué errores ocurren. Esencial para depurar sistemas distribuidos.

Conceptos clave de X-Ray

TraceColección de segmentos que juntos representan un request de punta a punta (del cliente a todos los servicios).
SegmentUnidad de trabajo de un único servicio. Contiene timing, errores y metadata del request.
SubsegmentTrabajo detallado dentro de un segmento: llamada a DynamoDB, query SQL, llamada HTTP externa.
Sampling RulesDefine qué porcentaje de requests se rastrean. Default: 5% + 1 req/seg por host. Configurable por servicio, URL, método HTTP.
X-Ray DaemonProceso que recibe segmentos de la app via UDP y los envía a X-Ray API. Necesario en EC2 y ECS (no en Lambda — es integrado).

Integración con servicios AWS

Lambda

Nativo — activa Active Tracing en la función

API Gateway

Nativo — activa X-Ray Tracing en el stage

ECS/EC2

Requiere X-Ray daemon como sidecar o daemon

EKS

ADOT Collector como DaemonSet o sidecar

App Mesh

Envoy sidecar genera trazas automáticamente

Elastic Beanstalk

Nativo — configurar en .ebextensions

CloudWatch ServiceLens

ServiceLens combina X-Ray traces, CloudWatch metrics y CloudWatch logs en una vista unificada. Genera un Service Map que muestra la salud de cada servicio con métricas de latencia, errores y tasa de requests — sin necesidad de navegar entre múltiples consolas.

Icon-Architecture/48/Arch_Amazon-CloudWatch_48

CloudWatch Evidently — feature flags y A/B testing

Evidently permite lanzar features gradualmente (feature flags) y medir su impacto con experimentos A/B. Evalúa métricas clave (conversión, latencia, errores) para decidir si un feature debe rollout completo o rollback.

Feature Flags

Habilita features para un % de usuarios sin redesplegar código. Permite canary releases controladas.

A/B Experiments

Divide el tráfico entre variantes y mide el impacto estadístico en métricas de negocio definidas.

Overrides

Fuerza una variante específica para usuarios internos o cuentas de testing.

Segmentación

Muestra features según atributos del usuario: región, plan, versión de app.

Icon-Architecture/48/Arch_AWS-CloudTrail_48

AWS CloudTrail — auditoría y gobernanza

Tipo de eventoQué registraCostoCaso de uso
Management EventsOperaciones de control plane: crear/modificar/eliminar recursosFree (primero trail)Auditoría de cambios de infraestructura, "quién creó este recurso"
Data EventsOperaciones sobre datos: S3 GetObject, Lambda Invoke, DynamoDB GetItemDe pagoAuditoría de acceso a datos sensibles, forensics post-incident
Insights EventsActividad inusual: spike de errores de IAM, llamadas inusuales a APIsDe pagoDetección de comportamientos anómalos en llamadas a la API

CloudTrail Organization Trail

Un Organization Trail creado en la Management Account registra eventos de todas las cuentas miembro en un S3 bucket centralizado. Las cuentas miembro no pueden modificar ni deshabilitar el trail. Garantiza auditoría completa e inmutable de toda la organización.

Icon-Architecture/48/Arch_Amazon-CloudWatch_48

Trampas frecuentes del examen

Trampa: "X-Ray registra todos los requests por defecto"

Realidad: FALSO. X-Ray usa sampling — por defecto registra 5% de requests + 1 request/seg. Para debugging completo se puede aumentar la tasa de sampling.

Trampa: "CloudWatch y CloudTrail son equivalentes"

Realidad: Son completamente diferentes. CloudWatch monitorea el rendimiento (métricas, logs de apps). CloudTrail audita las llamadas a la API de AWS (quién hizo qué con los recursos).

Trampa: "Container Insights funciona sin configuración adicional en EKS"

Realidad: FALSO. En EKS requiere desplegar el CloudWatch Agent (o Fluent Bit) como DaemonSet. En ECS con Fargate requiere una sidecar container con CloudWatch Agent.

¿Entendiste este tema?

Pon a prueba lo que acabas de aprender

Una empresa tiene una arquitectura de microservicios con 15 servicios en Lambda y ECS. Los usuarios reportan que algunas peticiones tardan más de 10 segundos de forma intermitente. El equipo de operaciones no puede determinar en qué servicio específico está la latencia. ¿Qué servicio AWS resuelve directamente este problema?

Inicia sesión para llevar tu progreso.