Observability Platform  ·  View 08 of 25  ·  Structure

The Completeness Boundary

The one decision every other view in this set either honours or contradicts.

Editable source SVG draw.io All views
COMPLETE — every observation contributes. Counting happens here. Reduce by aggregation Aggregation at the gateway Metric store 60 M active series Everything that decides Alert evaluation 30 s period SLO burn rate error budget Absence detection stopped exporter SAMPLED — an evidence corpus. Reading happens here, counting never does. Reduce by selection Tail sampler keep rules + rate stamp Log class reducer per declared class The corpus Trace store ≈6% retained Log store 6 TB/day after reduction THE ONLY JOIN — pointers, never quantities Exemplar index aggregate ↔ trace id Query surface labels every result Gateway tier — where the two paths separate unsampled selected exemplar id trace id refused The Completeness Boundary — Two Paths That Never Rejoin Application we own Data store Interface / broker synchronous event / async failure / alternate The red edge is the rule: an alert rule whose condition reads the sampled corpus is rejected at submission, not warned about at runtime. v 1.0 · owner Reliability Architecture · date 2026-09

The decision

  • Aggregates are complete; instances are sampled. The metric path is reduced by aggregation, in which every observation contributes before anything is discarded. The trace and log paths are reduced by selection and are deliberately incomplete.
  • The two paths split at the gateway, are stored separately, and are joined only through the exemplar index, which carries pointers and never quantities.

What follows from it

  • Alert evaluation can be independent of the query tier, because it only ever reads the complete path (view 10).
  • A 6% retained span rate is a reasonable default rather than a 94% blind spot, because nothing is counted from the corpus (view 16).
  • Cardinality must be admitted at the gateway, because an unbounded label on the one path that cannot shed is an unbounded cost (view 22).

The alternative, honestly

  • One wide-event corpus, sampled once, with every metric derived from it, is a real architecture with real proponents and is materially better at answering unanticipated questions.
  • It requires either accepting that every count is an estimate, or retaining enough unsampled that the cost advantage disappears. At 25 M samples/s against 2.5 M offered spans/s this design takes the other side — see ADR-01.