调试技巧

使用 ModelRiver 的可观测性 (Observability) 工具来追踪请求、检查有效负载并识别问题的根源。

系统化调试方法

在诊断问题时,请遵循以下步骤:

  1. 检查可观测性 (Observability):打开 可观测性 以查看准确的有效负载、供应商执行顺序和错误详细信息。
  2. 检查时间轴:时间轴视图显示了完整的请求生命周期,包括失败的供应商尝试、网络钩子 (Webhook) 投递和回调。
  3. 验证供应商配额:确认未达到供应商端的配额或速率限制。
  4. 隔离问题:使用已知正常的工作流重新运行请求,以确定问题是与有效负载相关还是全系统范围的。
  5. 检查客户数据:使用缓存数据追踪是哪个终端用户触发了请求。

使用可观测性进行调试

请求日志 (Request Logs)

  • 按工作流、状态、供应商或日期范围进行过滤。
  • 点击进入任何请求以查看完整的有效负载和响应。
  • 检查 meta.attempts 以查看是否使用了备用供应商。

时间轴视图 (Timeline view)

时间轴提供了以下内容的按时间顺序排列的视图:

  • 供应商选择和请求调度。
  • 带有失败原因的故障转移尝试。
  • 网络钩子 (Webhook) 投递尝试和响应。
  • 带有处理时间的事件驱动回调。

有效负载检查

  • 将发送的有效负载与您的预期架构 (schema) 进行比较。
  • 验证 messages 数组格式是否符合供应商预期。
  • 检查缓存字段是否引用了有效负载中的有效路径。

常见调试场景

AI 返回非预期格式

  1. 检查工作流是否附加了结构化输出。
  2. 验证架构 (schema) 是否符合您的预期。
  3. 尝试能力更强的模型(例如:从 gpt-3.5 升级到 gpt-4o)。
  4. 在请求日志中查看原始供应商响应。

备用供应商不断激活

  1. 检查时间轴以了解主供应商的失败原因。
  2. 验证主供应商凭据是否有效。
  3. 监控主供应商的状态页面了解其是否发生故障。
  4. 考虑调整超时阈值。

网络钩子 (Webhook) 未投递

  1. 在请求日志中检查网络钩子投递状态。
  2. 验证端点 URL 可访问且返回 2xx
  3. 在服务器日志中检查签名验证失败情况。
  4. 查看 投递与重试 了解重试状态。

有关使用请求日志进行调试的全面指南,请参阅 可观测性文档

下一步