OpenRouter 安全与可观测

OpenRouter 安全与可观测

Sentry

2 分钟阅读

Sentry

将追踪发送到 Sentry

Sentry 是帮助开发者实时识别和修复问题的应用监控平台。借助 Sentry 的 AI 监控能力,你可以跟踪 LLM 性能和错误。

第 1 步:获取 Sentry OTLP 端点和 DSN

在 Sentry 中,前往项目的 SDK 设置:

  1. 登录你的 Sentry 账户
  2. 前往 设置 > 项目 > [Your Project] > SDK 设置 > 客户端密钥(DSN)(Settings > Projects > [Your Project] > SDK Setup > Client Keys (DSN))
  3. 点击 OpenTelemetry 选项卡
  4. 复制 OTLP Traces Endpoint URL(以 /v1/traces 结尾)
  5. 从同一页面复制 DSN

第 2 步:在 OpenRouter 中启用广播

前往 设置 > 可观测性(Settings > Observability),打开 启用广播(Enable Broadcast) 开关。

启用广播

第 3 步:配置 Sentry

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

  • OTLP Traces Endpoint:来自 Sentry 的 OTLP 端点 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

第 4 步:测试并保存

点击 测试连接(Test Connection) 验证配置。仅当测试通过时才会保存配置。

第 5 步:发送测试追踪

通过 OpenRouter 发出一次 API 请求,然后在 Sentry 的 Performance 或 Traces 视图中查看该追踪。

Sentry 追踪视图

Sentry 使用 OpenTelemetry 进行追踪摄入。OTLP 端点和 DSN 都是正确完成身份验证和追踪路由所必需的。

自定义元数据

Sentry 通过 OTLP 协议接收追踪。trace 字段中的自定义元数据会作为 Span 属性发送,可用于 Sentry Performance 视图中的筛选和分析。

支持的元数据键

Sentry 映射说明
trace_idTrace ID将多次请求归入同一条追踪
trace_nameTransaction Name根 Span 的自定义名称
span_nameSpan Description层次结构中中间 Span 的名称
generation_nameSpan DescriptionLLM 生成 Span 的名称
parent_span_idParent Span ID关联到追踪层次结构中已有的 Span

示例

{
  "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"
  }
}

补充说明

  • trace 中的自定义元数据键会作为 Span 属性包含在 trace.metadata.* 命名空间下
  • user 字段会映射到 Span 属性中的 user.id
  • session_id 字段会映射到 Span 属性中的 session.id
  • 使用 parent_span_id 时,Sentry 会自动将 LLM 追踪与应用中已有的错误和性能数据关联

隐私模式

当该目标端启用 隐私模式 时,追踪中会排除提示词和补全内容。其余追踪数据(Token 用量、费用、时间信息、模型信息以及自定义元数据)仍会正常发送。详情见 隐私模式