前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【随手记】记录一次测试环境短信服务签名出错

【随手记】记录一次测试环境短信服务签名出错

作者头像
客怎眠qvq
发布2024-04-04 11:05:10
910
发布2024-04-04 11:05:10
举报
文章被收录于专栏:某菜鸟の小屋

前言

公司一个项目完成本地开发后,上测试环境部署,出现了收发短信业务签名不一致的情况,具体表现客户身份对应的父公司签名,收到短信签名确实子公司,一番排查后,结果却让人哭笑不得……

解决过程

1、先看看腾讯云短信功能的签名和模版有没有失效

签名和模版状态都正常

2、克隆项目至本地,先本地跑起来再说

免责声明:代码不是俺写的,俺就是个救火的。

简单看了下函数逻辑,根据数据库中获取的客户信息,确认对应发送的短信类型 sendType,再根据字典表确认 sendType 对应的场景值 sceneId,每一个场景值对应着腾讯云短信服务的短信模版,决定了短信签名和内容。

打断点,本地环境下各项参数都没问题,收到的短信也正常,先重新打包扔到测试环境看看。

不出意外地出了意外,短信依然签名出错。

3、排查业务所在平台的短信发送记录

翻开对应的历史记录,顿觉大事不妙,为啥哥们本地的历史记录和测试环境不同啊,不都是从数据库里抓的吗?

等等,数据库!点开 git commit,找到写这个功能的同事,薅来了测试数据库的账号密码,navicat 打开记录场景值的数据表一看,签名类型和场景值都没问题啊?总不能是判断没执行吧。

在代码的发送类型判断并赋值场景值埋了日志,如果进行赋值操作就打印,同时打印赋值前后的 sendTypesceneId

部署后往 rancher 里一蹲,md,一蹲一个不吱声( ‵o′)

测试环境下压根就没走判断 sendType 后对场景值赋值的语句,万能的群友提问,为什么日志中 sendType值在第二行才打印,模版id的日志却在同一行?

特殊符号……

4、排查数据库

打开 navicat 对应单元格的文本内容,显示如下:

一切很明显了,SEND_TYPE 类型为 String ,可视化工具显示单元格内容的最后一行,实际值为 ‘\n311696’。

哪个开发,测试环境改数据加回车的……

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 解决过程
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档