Files
huang b5147d1acb
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 7m34s
设备的部分改造
2026-03-10 10:34:08 +08:00

1.4 KiB
Raw Permalink Blame History

Gateway Request Logging

Purpose

Gateway 请求日志记录,在每次 Gateway API 调用时按结果级别记录请求日志,便于问题排查和运维监控。

ADDED Requirements

Requirement: Gateway 请求日志

系统 SHALL 在每次 Gateway API 调用时记录请求日志,包含请求路径和请求体大小。

Scenario: 正常请求记录 Debug 日志

  • WHEN 调用 doRequest(ctx, "/flow-card/status", req) 且请求成功
  • THEN 记录 Debug 级别日志
  • AND 日志包含字段:path(请求路径)、duration(耗时)

Scenario: Gateway 业务错误记录 Warn 日志

  • WHEN Gateway 返回 code != 200 的业务错误
  • THEN 记录 Warn 级别日志
  • AND 日志包含字段:pathdurationgateway_codeGateway 状态码)、gateway_msgGateway 错误信息)

Scenario: 网络错误记录 Error 日志

  • WHEN HTTP 请求失败连接失败、超时、DNS 解析失败等)
  • THEN 记录 Error 级别日志
  • AND 日志包含字段:pathdurationerror(错误信息)

Requirement: Logger 依赖注入

系统 SHALL 通过构造函数将 *zap.Logger 注入到 Client 中。

Scenario: 创建带日志的客户端

  • WHEN 调用 gateway.NewClient(baseURL, appID, appSecret, logger)
  • THEN 客户端使用传入的 logger 记录日志
  • AND 不使用全局 zap.L()