For full observability in FastAPI you need 6 pip packages + 60 lines of config + manual glue between logs/spans/metrics. In Fitz it's two decorators and an env var. With trace_id auto-correlated between logs and spans, and Secret<T> redacted in logs without thinking.
The stack every "production-ready" app ends up gluing together
Your app grows. The client wants to know which endpoint is slow, how many requests failed in the last hour, and why a specific user saw an error at 3 AM. We're talking about the Sacred Triangle of observability: traces, metrics, logs. In 2026 the industry answer is OpenTelemetry for all three.
In Python with FastAPI:
pip install opentelemetry-distro[otlp] \






