Estimate time-series cardinality as a product, not a sum
Account for replicas and classic histogram bucket series
Reject unbounded identity labels even when today's sample is small
Every label combination becomes state
A metric with method, route, status and region creates the product of their distinct values for every replica. User ids, request ids and raw URLs are unbounded dimensions and belong in logs or traces, not metric labels. Series cost continues through ingestion, memory, storage and query fan-out.
Start from a decision, not available data
A useful metric answers an operational question tied to an SLI, saturation signal or experiment. Before adding it, define the action, cardinality budget, expected churn and whether an existing metric or sampled trace already answers the question.
CHECKPOINT
Which proposed Prometheus labels are unsafe for a request metric? Select every unbounded dimension.
Select every applicable option. Credit requires an exact set match.
ISOLATED RUST 1.96
src/lib.rsEDIT
02 / PROFILING
Read the profile and fix the cause
Fix the metric cost gate. Series are replicas × the product of label cardinalities; a classic histogram creates bucket_count + 2 series per label set. Reject zero values, any unbounded label, arithmetic saturation, or an estimate above the budget.