Skip to content

Sentry 是应用监控平台,帮助开发者实时发现和修复问题。通过 OpenRouter Broadcast,可以将 LLM 请求 trace 通过 OTLP 协议发送到 Sentry,与应用现有的错误和性能监控数据关联。配置需要两个字段:OTLP Traces Endpoint(从 Sentry 项目的 SDK Setup > OpenTelemetry 标签获取)和 Sentry DSN(同页面获取)。parent_span_id 元数据键可将 LLM trace 嵌套到已有应用 span 下。

Sentry 是帮助开发者实时识别和修复问题的应用监控平台。通过 OpenRouter Broadcast,可以在 Sentry 中追踪 LLM 性能,并将其与应用错误和性能数据关联。

配置步骤

第一步:获取 Sentry OTLP Endpoint 和 DSN

  1. 登录 Sentry 账号
  2. 进入 Settings > Projects > [你的项目] > SDK Setup > Client Keys (DSN)
  3. 点击 OpenTelemetry 标签
  4. 复制 OTLP Traces Endpoint URL(以 /v1/traces 结尾)
  5. 从同一页面复制 DSN

第二步:在 OpenRouter 开启 Broadcast

前往 Settings > Observability,打开 Enable Broadcast 开关。

第三步:配置 Sentry

点击 Sentry 旁边的编辑图标,填写:

字段填写内容
OTLP Traces EndpointSentry OTLP endpoint URL(如 https://o123.ingest.us.sentry.io/api/456/integration/otlp/v1/traces
Sentry DSN你的 Sentry DSN(如 https://abc123@o123.ingest.us.sentry.io/456

注意:OTLP Endpoint 和 DSN 都是必填的,两者用于 Sentry 的认证和 trace 路由。

第四步:测试并保存

点击 Test Connection 验证配置,测试通过后自动保存。

第五步:查看 LLM Trace

通过 OpenRouter 发送 API 请求,在 Sentry 的 PerformanceTraces 视图中查看 trace 数据。

元数据映射

Sentry 通过 OTLP 协议接收 trace。通过 trace 字段传入的自定义元数据以 span attributes 形式存储,可在 Sentry Performance 视图中用于过滤和分析:

Sentry 映射说明
trace_idTrace ID将多个请求归入同一 trace
trace_nameTransaction Name根 span 的自定义名称
span_nameSpan Description中间 span 的名称
generation_nameSpan DescriptionLLM 生成 span 的名称
parent_span_idParent Span ID链接到现有 span

字段映射说明:

  • user 映射到 span attributes 中的 user.id
  • session_id 映射到 session.id
  • trace 中的自定义键以 trace.metadata.* 命名空间存储
  • 使用 parent_span_id 可将 LLM trace 自动关联到应用的错误和性能数据

示例

json
{
  "model": "openai/gpt-4o",
  "messages": [{ "role": "user", "content": "Debug this error..." }],
  "user": "user_12345",
  "session_id": "session_abc",
  "trace": {
    "trace_id": "incident_investigation_001",
    "trace_name": "Error Analysis Agent",
    "generation_name": "Analyze Stack Trace",
    "environment": "production",
    "release": "v2.1.0"
  }
}

Privacy Mode

当为此目的地开启 Privacy Mode 时,prompt 和 completion 内容会从 trace 中排除。其他 trace 数据(token 用量、费用、时间、模型信息)仍正常发送。

常见问题

Q: 为什么 Sentry 配置需要同时填 OTLP Endpoint 和 DSN?

A: Sentry 的 OTLP 集成需要两者配合:OTLP Endpoint 是数据写入的 HTTP 地址,DSN 用于认证和 trace 路由(确保数据写入正确的 Sentry 项目)。缺少任一都会导致配置失败。

Q: LLM trace 会出现在 Sentry 的哪个视图中?

A: 主要在 Performance > Traces 视图中。如果配置了 parent_span_id 将 LLM trace 嵌套到应用 span 中,还会在关联的 Issues 详情页中看到 LLM 调用链路。

Q: 如何将 LLM 错误(如超时、速率限制)与 Sentry 错误报告关联?

A: 在 LLM 请求的 trace 字段中传入与当前应用 span 相同的 trace_idparent_span_id,Sentry 会自动将 LLM trace 嵌套到现有的应用错误事件中,方便在错误详情页看到完整的调用链路。