Conceptual guide to wide events (canonical log lines) for observability. Use when thinking about instrumentation strategy, span annotations, or designing what context to capture.
∀ span → attach(identity ∪ user ∪ business ∪ performance ∪ outcome)
retain(100%) := errors ∨ slow(>p99) ∨ vip
retain(1-5%) := success ∧ fast
before(instrument) → verify(answerable({
"failures where tier=premium ∧ feature.new_flow=true"
"p99(latency) group by tier"
"errors group by featureFlags"
"full context for user X incident"
}))
¬queryable → ¬enough-context
cardinality := |unique values| (userId=high, httpMethod=low)
dimensionality := |fields per event| (more → better)
wide-event := canonical-log-line := one comprehensive record
deciding(span-annotations)
reviewing(instrumentation-coverage)
debugging(incidents) → "what context was missing?"
planning(new-service-observability)
choosing(fields-to-index)
Reference: See Article.md for full article by Boris Tane (loggingsucks.com)