Danijel Martinek
cb0e33b0e8
docs(spec): OpenTelemetry migration design
Five-phase migration of server-side instrumentation from Sentry-direct
SDK calls to OpenTelemetry SDK with @sentry/opentelemetry as the (initial)
exporter. Vendor neutrality: swap vendors = swap exporters, never rewrite
tracer/logger/metrics impls.
Phase 1: OTel SDK infrastructure (no behavior swap).
Phase 2: OtelTracer replaces SentryTracer (uses @opentelemetry/api).
Phase 3: OtelLogger replaces SentryLogger (pure OTel Logs API via
@opentelemetry/api-logs; breadcrumbs become span events; user.id as
span attribute).
Phase 4: New IMetrics interface + Noop/Otel/Recording impls; added to
BindContext as metrics? with corresponding MetricsProtocol in
core-shared/di/bind-protocols.ts.
Phase 5: HTTP/undici/pg auto-instrumentations; PII scrubbing migrates
from Sentry beforeSend hooks to OTel SpanProcessor/LogRecordProcessor;
delete remaining Sentry-direct files; ADR-017 supersedes ADR-014's
impl section while keeping R31-R51 interface decisions authoritative.
Server-only scope. Browser keeps Sentry SDK directly (replay + native
error UX); future spec extends to browser when OTel-Browser matures.
Companion ADR will be assigned at implementation time (expected ADR-017).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 11:04:37 +02:00
..
2026-05-04 20:04:45 +02:00
2026-05-06 16:43:13 +02:00
2026-05-06 09:17:35 +02:00
2026-05-06 09:17:50 +02:00
2026-05-06 21:03:30 +02:00
2026-05-08 17:05:05 +02:00
2026-05-08 19:51:06 +02:00
2026-05-09 11:57:46 +02:00
2026-05-11 08:47:27 +02:00
2026-05-11 11:04:37 +02:00