跳到主要内容
SolidwayLLM 网关

以下页面描述网关的预期行为。开源版本与企业版本正在拆分中,首个正式版本发布后细节会同步更新。

日志与追踪

结构化请求记录、路由日志,以及 OTLP 导出。

每个请求产生两种记录:一条结构化请求日志,一份路由日志。

请求日志

每个完成的请求输出一行结构化 JSON:

{
  "ts": "2026-10-07T21:04:11.482Z",
  "request_id": "01J...",
  "route": "POST /v1/messages",
  "provider": "anthropic",
  "model": "claude-sonnet-5-5",
  "status": 200,
  "duration_ms": 812.4,
  "attempts": 1,
  "tokens": { "input": 42, "output": 118, "cached": 0 },
  "cost_usd": 0.00142,
  "workspace": "platform"
}

字段集是稳定的。新增字段属于小版本变更,重命名字段属于大版本变更。

路由日志

路由日志解释的是决策过程,而不只是结果。它按顺序记录:

  • 选中了哪个 target,依据是什么(链序、权重、会话)
  • 为什么发生重试,是否换了密钥
  • 为什么放置暂停、解除暂停,或被跳过
  • 最终由哪个 target 服务

读一份路由日志就能回答「这个请求为什么发到那里」,不必去关联多个日志流。

路由日志随请求保存;当回退链全部失败时,它会包含在 503 的响应体里。

追踪

配置 OTLP 导出后,每次上游尝试成为一个 client span,整个请求成为一个 server span。 追踪上下文通过 traceparent Header 传递给 provider。

gen_ai.* 属性遵循 OpenTelemetry 生成式 AI 语义约定,因此按该约定搭建的面板无需转换即可使用。

设置 效果
关闭正文捕获 属性只描述结构与用量
开启正文捕获 记录提示词与补全内容,超出配置上限时截断

脱敏

Header 脱敏在任何内容落盘之前执行。凭据不会出现在日志、span 或路由日志中 —— 包括在把上游响应回显给调用方的错误路径上。

下一步