Papa Labs

电子签名邮件发不出去,两个供应商各执一词,该怎么找到问题到底出在哪一边

某天开始,用第三方电子签名服务发出的”请签署”邮件,发给公司内部两个 Microsoft 365 租户的收件人时,全部没有送达——没有退信、没有报错,邮件活动记录里也查不到任何异常提示。但发给同一个人的私人 Gmail 邮箱,却能正常收到。这类”一部分收得到、一部分收不到,双方都查不出错误”的问题,最难受的地方在于:两个供应商各自的系统日志都显示自己那边一切正常

先做交叉测试,把”猜测”变成”数据”

在联系任何一方客服之前,先做了几组交叉测试,确保后续沟通有明确的数据支撑,而不是单纯描述”感觉发不出去”:

  • 发送到同一收件人的私人 Gmail 地址 → 收到
  • 发送到公司 A 的 M365 租户地址 → 没有收到
  • 发送到公司 B(另一个关联企业)的 M365 租户地址 → 同样没有收到
  • 电子签名服务后台的活动记录(Activity)里,没有任何退信(bounce)提示

这组测试结果本身已经带有很强的指向性:问题只在”发到自家 M365 租户”这一种组合下出现,跟收件人是谁、用什么设备查收无关

交叉测试结果:发 Gmail 能收到,发两个自家 M365 租户都收不到——问题的边界已经被数据圈定,只是双方都不认账

两边都说”我这边没问题”的时候,交叉测试数据才是真正说话的东西

两个供应商,两种”没有证据证明是我的问题”

联系电子签名服务的客服后,得到的答复是:如果问题出在他们那一侧,活动记录里理应会显示退信信息;既然没有退信记录,同时私人邮箱能正常收到,问题大概率出在收件方的 Microsoft 365 邮件服务器设置上。这个结论本身逻辑没有问题——但它同时也意味着,接下来只能带着这份交叉测试记录,向另一个供应商(Microsoft)开工单,重新走一遍类似的举证过程。

这类”供应商之间互相指向对方”的情况并不少见,尤其是当问题涉及两个独立系统之间的邮件投递链路时:每一方能看到的只是自己系统内部的日志,谁都没有完整链路的可见性,都能诚实地说”我这边没有报错”,却都无法证明”锅”确实不在自己身上。

应对方式:把交叉测试记录当作”移交凭证”

面对这种各执一词的局面,比继续和第一个供应商争论更有效的做法是:把已经做过的交叉测试原样整理成一份记录,作为向第二个供应商开工单时的举证材料,而不是重新从头描述问题。这样做的好处是,第二个供应商拿到的不是一句”邮件收不到”,而是一组已经排除过外部因素(收件人网络、设备、供应商 A 系统本身无退信)的结构化证据,能够更快把排查方向对准自己一侧的实际配置。

教训

  1. 涉及两个独立系统之间的问题,交叉测试记录比任何一方的客服判断都更有说服力——供应商各自的结论都只基于自己看得到的那一部分日志,只有跨系统的对照测试才能圈定问题真正发生的边界;
  2. “没有报错”不等于”这一侧没问题”——本例里电子签名服务的日志没有任何异常,但这只能说明问题不在”发送”这个动作本身,不代表投递链路的其他环节(比如收件方邮件网关的过滤规则)没有问题;
  3. 遇到供应商之间互相指向对方的情况,与其反复陈述问题,不如把已完成的排查证据结构化,直接作为下一步举证材料复用——这样每一次升级工单,起点都比上一次更靠后,而不是每次都从零开始解释。
← 全部文章