Sentry 与 OpenTelemetry:您无需二选一” 笔记

Sentry 与 OpenTelemetry:您无需二选一”

您可以通过配置 OTLP 导出器指向 Sentry 的端点,将 Sentry 与现有的 OpenTelemetry 后端集成。此过程仅需少量改动,无需重写现有的 instrumentation。对于 Web 应用程序,建议在前端添加 Sentry SDK 以捕获浏览器上下文,从而实现从用户交互到后端操作的统一追踪视图。OpenTelemetry 支持追踪(traces)、日志(logs)和指标(metrics),但 Sentry 目前仅通过 OTLP 接收追踪和日志。关键在于将追踪链接(trace linking)与 OTLP 导出分离。追踪链接确保前端和后端请求之间形成连续的分布式追踪。Sentry 前端 SDK 通过传播 W3C traceparent 标头来实现这一点。后端 OTLP 事件的发送目的地决策是独立的:您可以直接将它们发送到 Sentry,或通过 OpenTelemetry Collector 转发。对于单一后端项目,直接 OTLP 导出最为简单;而 Collector 转发则为多个服务提供集中处理和路由。演示架构展示了一个带有 Sentry SDK 的 React 前端、一个使用 OpenTelemetry 的 FastAPI 后端以及一个 OpenTelemetry Collector。后端保留其 OpenTelemetry 设置,包括手动 spans 和日志。Collector 随后将这些 OTLP 事件转发至 Sentry。请确保后端正确配置 CORS,以允许跨域请求传播追踪标头。
CdXz5zHNQW_atW5fkJcmM.webp