Skip to main content
Autopilot surfaces cluster and managed-service health, network traffic, and cost attribution in the same dashboard — all from existing Prometheus metrics and the GCP Cloud Monitoring API, with no extra agents.

GCP managed services monitoring

Autopilot provides read-only monitoring for GCP services associated with each cluster. The controller polls the GCP Cloud Monitoring API every 60s and surfaces health and metrics in the dashboard.

Configuration

Per-cluster in deploy/envs/<cluster>.yaml:
The GCP Services page shows a card for each service with health indicators and key metrics. Click through for a detail page with usage charts and events.

Network monitoring

Cluster-wide network observability powered by Prometheus. The Network page provides real-time visibility into traffic patterns, errors, and drops across the cluster without any additional agents or configuration — it queries existing Prometheus container network metrics. What it shows:
  • Cluster throughput — aggregate ingress/egress bandwidth (bytes/sec) with a time-series chart.
  • Top namespaces by traffic — which namespaces generate the most network I/O.
  • Top pods by traffic — individual pods ranked by bandwidth consumption.
  • Per-node network health — errors/sec and drops/sec per node, flagging nodes with problems.
  • Error summary — cluster-wide error and drop rates with node counts.
Key design details:
  • Virtual interfaces (veth, calico, flannel, CNI bridges) are excluded — only physical NIC traffic is counted, to avoid double-counting.
  • Data is cached with singleflight so dashboard polls don’t hammer Prometheus.
  • No configuration needed — it works automatically if Prometheus is available.
Navigate to Infrastructure → Network. The page shows summary cards, a throughput time-series chart, and tables for top namespaces, top pods, and node health.

Package cost tracking

Per-package cost attribution for tenant namespaces. Each pod’s share of node cost is computed using request-weighted blended CPU/memory:
Pods are grouped by the xano.com/package label. Unattributed cost is tracked as spillover in three categories: DaemonSet pods, system pods, and idle capacity. Cost snapshots are recorded every 6 hours for trend analysis. The Package Costs page (Infrastructure section) shows a cost breakdown table, spillover analysis, and a historical cost chart.

System health checks

The health endpoint (GET /api/v1/health) runs a battery of checks: