Observability Platform · View 13 of 25 · Data
Decisions
- effective_rate and keep_reason live on the trace, not in a pipeline config. A trace that cannot say why it survived or at what rate cannot be corrected for, and a count derived from it has to be refused.
- enforcement_event is a first-class entity, not a log line. Every dropped label, rejected series and shed class is a record with an attribute, a team and a count — which is what makes "never silently drop telemetry" checkable.
- trace_id on log_record is optional: a log from an unsampled request still exists, and the join returns nothing rather than the record being discarded.
Assumptions
- Budget and retention class are held on the team and overridable per service. If real tenancy turns out to be per-service with no team layer, usage_ledger and the scorecards in view 06 lose their natural grain.
Deliberately omitted
- Alert rules and SLO definitions are control-plane configuration and live in the store shown in view 12; modelling them here would suggest they sit beside telemetry, which is exactly the coupling view 10 avoids.