Prometheus vs CloudWatch
Self-hosted metrics vs AWS-native observability — cost and portability tradeoffs.
| Aspect | 📈 Prometheus | ☁️ CloudWatch |
|---|---|---|
| Model | Pull metrics, PromQL | Push/pull via agent, CloudWatch Metrics Insights |
| Cost | Infra + storage you manage | Per-metric/per-request; can grow fast |
| K8s | kube-prometheus-stack standard | Container Insights / ADOT collector |
| Alerting | Alertmanager + routes | CloudWatch Alarms + SNS/PagerDuty |
| Portability | Cloud-agnostic, same stack everywhere | AWS-only |
| Long-term storage | Thanos, Mimir, Cortex | S3 export, limited retention default |
When to use which
Prometheus
Multi-cloud, K8s-native metrics, and PromQL across all environments.
CloudWatch
All-in on AWS, minimal ops, and tight integration with Lambda/RDS/ALB.