Shopify Webhooks

日志里怎么用 X-Shopify-Event-Id 串起一条事件

现象#

排查时只能按订单号搜日志,同一订单几十条记录混在一起,分不清哪几条来自同一次商家操作,也对不上 Dev Dashboard 的某次投递。

原因#

  • 日志只写 body 里的 order id,三个 header 标识一个都没落
  • 多订阅收同一 topic 时 Webhook-Id 各不相同,按它搜只能看到其中一条
  • header 没进 trace 上下文,跨服务调用后链路断开
  • 投递详情里显眼的标识是 Webhook ID,Event-Id 藏在 HTTP headers 中不易检索

处理步骤#

  1. 入口把 X-Shopify-Event-Id 与 X-Shopify-Webhook-Id 写进结构化日志
  2. 把 event_id 注入 trace 上下文,下游服务自动继承
  3. 先在 Logs 按 Topic 与时间定位投递,再拿 Webhook ID 精确检索
  4. 用 event_id 聚合,看一次操作触发了哪几个 topic 的投递
  5. 日志保留 30 天以上,覆盖重试窗口与人工排查周期

验收标准#

用一条 event_id 能检索出该次操作的全部投递与业务日志,并能对上 Logs 里的 Webhook ID。

本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。