Cuando te despierta el teléfono a las 3 de la mañana porque la aplicación está devolviendo errores 500 intermitentes, lo último que quieres ver es un panel con cientos de métricas en rojo sin contexto. Quieres saber exactamente dónde sangra el sistema.

Llevo años pegándome deseando tener en las empresas donde trabajo distintas herramientas de observabilidad inteligente (lo que el marketing insiste en llamar AIOps). Al final, en arquitecturas distribuidas con microservicios y bases de datos que no paran de escupir logs, el volumen de datos supera nuestra capacidad humana de análisis. Aquí es donde entran CloudWatch Anomaly Detection, Amazon DevOps Guru y Dynatrace Davis AI.

Cada herramienta tiene un enfoque radicalmente distinto. Vamos a destriparlas.

CloudWatch Anomaly Detection: El martillo estadístico

Es la aproximación más purista de AWS al problema. Tomas una métrica concreta (por ejemplo, CPUUtilization o NetworkIn) y le aplicas un algoritmo que analiza su comportamiento histórico.

Funciona creando bandas de predicción. Si el valor real se sale de esa banda, salta la alarma.

Ventajas: - Integración nativa. Si ya usas CloudWatch, lo activas con un par de clics. - Configuración de umbrales dinámica. Te olvidas de tener que reajustar alarmas estáticas porque el tráfico sube naturalmente los domingos por la tarde. - Barato. Pagas por alarma anómala configurada.

Desventajas: - Cero contexto. Te avisa de que el uso de CPU ha subido un 40% de forma anómala, pero no te dice por qué ni qué impacto tiene en otros servicios. - Falsos positivos constantes en despliegues. Si el consumo sube ligeramente debido al cold start de las Lambdas, prepárate para el ruido.

Cuándo usarlo: Úsalo en métricas core muy aisladas donde una desviación siempre significa problemas, como el número de conexiones a la base de datos o los mensajes atascados en un SQS (Dead Letter Queue).

Amazon DevOps Guru: La caja negra de AWS

AWS intentó solucionar la falta de contexto de CloudWatch con DevOps Guru. En lugar de mirar métricas aisladas, analiza el comportamiento de todo tu stack basándose en los patrones operativos. Ingiere métricas, logs, eventos de CloudTrail e incluso el historial de despliegues.

Ventajas: - Contexto enriquecido. Cuando detecta un fallo, te agrupa las métricas. Te dice: "Ha subido la latencia en API Gateway y al mismo tiempo esta tabla de DynamoDB está sufriendo throttling". - Configuración trivial. Le dices "vigila esta cuenta" o "vigila estos tags" y te olvidas.

Desventajas: - Es una caja negra. No tienes control sobre los algoritmos. Si no detecta algo, no puedes ajustar el modelo manualmente. - Tarda en aprender. En entornos con tráfico muy irregular o cargas de trabajo batch intermitentes, tarda días en ajustarse y mientras tanto inunda el canal de alertas. - Restringido a AWS. Si tienes un sistema híbrido, DevOps Guru está ciego fuera de su ecosistema.

Cuándo usarlo: Ideal para arquitecturas serverless completamente alojadas en AWS, donde la gobernanza de IA en producción se basa casi al 100% en servicios gestionados.

Dynatrace Davis AI: El bisturí determinista

A diferencia de los modelos puramente estadísticos, Davis AI utiliza un enfoque determinista basado en grafos de dependencias topológicas. Dynatrace inyecta su agente OneAgent a nivel de sistema operativo y mapea en tiempo real qué proceso habla con qué contenedor y a qué base de datos se conecta.

Ventajas: - Análisis de causa raíz (RCA) real. No te dice "hay un problema en estos tres servicios". Te dice: "El 5% de los usuarios no puede hacer checkout porque el servicio de inventario encola peticiones debido a que una consulta en MySQL tarda 4 segundos tras el último commit en el repositorio". - Cero configuración inicial. Inyectas el agente y descubre la topología de forma automática. - Observabilidad híbrida completa. Llega hasta el navegador del usuario y los servidores bare-metal.

Desventajas: - Precio muy alto. Pica bastante. En sistemas grandes con miles de hosts, la factura asusta. - Intrusivo. El OneAgent se mete hasta la cocina a nivel kernel. Rara vez falla, pero cuando un agente de este nivel colapsa, tira el host entero.

Cuándo usarlo: Cuando la aplicación maneja transacciones de alto valor y necesitas un tiempo de resolución mínimo. Muy útil si estás integrando agentes para la gestión de incidencias en flujos automatizados.

Aterrizando el concepto: CloudWatch Anomaly Detection con Terraform

Para no quedarnos solo en la teoría, vamos a configurar una alarma de detección de anomalías en AWS usando Terraform.

Imagina este caso: queremos monitorizar el número de errores 5XX en un balanceador de carga (ALB). Poner una alarma estática (ej: avisar si hay > 50 errores) trae problemas. Si el tráfico se multiplica por 10 en Black Friday, 50 errores igual es un porcentaje ridículo y aceptable.

Así se levanta esto en infraestructura como código:

resource "aws_cloudwatch_metric_alarm" "alb_5xx_anomaly" {
  alarm_name          = "ALB-5XX-Anomaly"
  comparison_operator = "GreaterThanUpperThreshold"
  evaluation_periods  = 2
  threshold_metric_id = "e1"

  metric_query {
    id          = "e1"
    expression  = "ANOMALY_DETECTION_BAND(m1, 2)"
    label       = "Banda de anomalía 5XX (2 Desviaciones Estándar)"
    return_data = true
  }

  metric_query {
    id = "m1"
    metric {
      metric_name = "HTTPCode_Target_5XX_Count"
      namespace   = "AWS/ApplicationELB"
      period      = 300
      stat        = "Sum"
      dimensions = {
        LoadBalancer = aws_lb.produccion.arn_suffix
      }
    }
  }

  alarm_actions = [aws_sns_topic.alertas_pagos.arn]
}

En este bloque, ANOMALY_DETECTION_BAND(m1, 2) crea la banda usando 2 desviaciones estándar sobre el modelo predictivo de AWS. La alarma salta con GreaterThanUpperThreshold cuando los errores 5XX reales superan el límite superior predicho durante 2 periodos consecutivos de 5 minutos.

Si te interesan las arquitecturas basadas en eventos que reaccionan a estas métricas, revisa cómo integrar estas señales con agentes autónomos en entornos linux.

Cada herramienta cumple una función específica según tu arquitectura. CloudWatch para métricas aisladas críticas. DevOps Guru para el conjunto de tu cuenta AWS sin configurar nada. Dynatrace Davis cuando el impacto económico justifica pagar por visibilidad determinista total.