Observability is how you find out what your system is doing without attaching a debugger to production: metrics (numbers over time), logs (events with detail) and traces (one request's path through many services). Metrics, logs and alerts and Tracing teach how to use them. This page is about where to keep them, because observability has a habit of becoming one of the largest lines on a cloud bill, and the choice of backend is what decides it.
Each cloud sells a native stack that works with no setup. Alongside it, the industry has standardised on two open tools: Prometheus for metrics and OpenTelemetry for instrumentation. Every cloud now offers a managed Prometheus, and every major backend accepts OpenTelemetry data, which lets you instrument once and choose, or change, the backend later.
Side by side
| AWS | Google Cloud | Azure | Open source | |
|---|---|---|---|---|
| Native metrics | CloudWatch | Cloud Monitoring | Azure Monitor Metrics | |
| Managed Prometheus | Amazon Managed Service for Prometheus | Managed Service for Prometheus | Azure Monitor managed service for Prometheus | Prometheus, Thanos, Mimir, M3 |
| Logs | CloudWatch Logs | Cloud Logging | Log Analytics workspaces | Loki, OpenSearch, ClickHouse |
| Traces | X-Ray, through AWS Distro for OpenTelemetry | Cloud Trace | Application Insights | Jaeger, Tempo |
| Instrumentation | OpenTelemetry everywhere | |||
| Metrics priced per | Custom metric per month; managed Prometheus $0.90 per 10 million samples | Managed Prometheus $0.06 per million samples, others per MiB | Per sample ingested and queried for managed Prometheus and OpenTelemetry metrics; platform metrics free | Your servers |
| Logs priced per | GB ingested: $0.50 Standard, $0.25 Infrequent Access | GiB ingested, $0.50, 30 days' storage included, first 50 GiB a month free | GB ingested, priced by table plan | Your storage |