Logging and Observability Costs in Kubernetes: Tame the Sidecars
Sidecars and verbose logs can double your bill. Here’s how to cut observability spend without losing signal.
Trying to calculate your cloud bill using PromQL? Here is why your numbers never match the AWS invoice, and why you need a reconciliation layer.
We built a CLI for FinOps because we wanted quick answers. But why couldn’t we just use our existing Prometheus dashboards?
We tried. It didn’t work.
Here is the dirty secret of Cloud FinOps: Usage != Cost.
Prometheus is designed for trends, not transactions. It scrapes metrics every 15s or 30s. If a pod starts, does heavy work for 5 seconds, and dies between scrapes, Prometheus might miss it entirely.
AWS Billing never misses it. You pay for every second.
Over a month, these “ghost pods” can add up to a 10-15% discrepancy.
Prometheus knows you used 4 vCPUs. It does not know how much those vCPUs cost.
To get the cost, you have to multiply Usage * Rate. But the Rate is dynamic and lives in the AWS Cost & Usage Report (CUR), not in Prometheus.
Billing data needs to be kept for years (for audits and YoY analysis). Prometheus high-cardinality metrics are usually kept for weeks.
You cannot rely on metrics alone. You need a system that:
This is what ClusterCost does. We use the metrics to allocate the bill, but we use the CUR to validate the total.
Don’t use a ruler to measure weight. Don’t use Prometheus to measure dollars.
Founder & CEO
Sidecars and verbose logs can double your bill. Here’s how to cut observability spend without losing signal.
Every agent you install (Datadog, Splunk, Istio) taxes your CPU and Memory. Learn how to calculate the true cost of your DaemonSets.
Get Kubernetes and ECS cost tactics delivered weekly.