微信运营中心与可观测性
事件中心
事件中心记录微信回调的接收、处理和失败状态,用于定位“微信已推送但业务没有变化”的问题。
主要能力:
- 按 AppID、事件类型、处理状态和时间查询。
- 查看事件原始摘要、处理结果和异常。
- 对支持重放的失败事件执行人工重放。
- 记录重放次数、最近重放时间和操作人。
权限:wx:wxevent:index、wx:wxevent:get、wx:wxevent:replay。
重放是再次执行本地处理逻辑,不会要求微信重新发送。执行前必须确认业务处理具有幂等性,避免重复发送消息或重复写订单状态。
微信 API 调用日志
API 日志用于观察后台到微信的请求,不保存敏感凭据。
常用字段:
- 租户、AppID、接口分类和请求路径。
- 调用开始时间、耗时、成功状态。
- 微信错误码和错误信息。
- 请求与响应的脱敏摘要。
权限:wx:wxapilog:index、wx:wxapilog:get、wx:wxapilog:diagnose、wx:wxapilog:quota。
排查顺序:
- 先看 HTTP 状态和微信错误码。
- 再确认 AppID、账号类型和授权方式。
- 查看是否发生 token 刷新和重试。
- 最后检查微信官方能力和调用额度。
不要通过复制带 access_token 的完整请求地址来排查,token 一旦出现在日志或工单中应立即失效处理。
账号健康中心
账号健康中心聚合:
- 账号凭据可用性。
- access token 获取状态。
- 回调配置和第三方平台授权状态。
- 密文版本与密钥轮换状态。
- 最近微信 API 异常。
权限:wx:wxhealth:index、wx:wxhealth:check、wx:wxhealth:rotate。
健康检查是只读检测;密钥轮换会更新数据库密文,必须单独授权。
运维告警
告警中心用于处理持续失败、凭据异常、回调积压和调用额度风险。
能力:
- 查看告警详情和上下文。
- 标记处理状态和处理备注。
- 测试或触发通知渠道。
- 关联账号、事件或 API 日志继续排查。
权限:wx:wxalert:index、wx:wxalert:get、wx:wxalert:handle、wx:wxalert:notify。
运营自动化
运营自动化包括通知配置、投递记录、事件重放审计和任务配置。自动化只负责编排已有闭环,不应绕过原业务权限和微信状态校验。
建议:
- 自动重试采用有限次数和退避策略。
- 永久参数错误不自动重试。
- 微信限流错误等待窗口后重试。
- 所有自动操作记录租户、AppID、任务和结果。
- 发布、解绑、删除、额度清零等高风险操作不做无人值守自动化。
常用错误分类
| 类别 | 处理方式 |
|---|---|
| token 失效 | 检查凭据或第三方平台授权,允许 SDK 刷新后重试 |
| 无接口权限 | 确认账号类型、认证状态、官方能力和授权集 |
| 参数错误 | 对照页面输入和服务端校验,不盲目重试 |
| 调用频率限制 | 降低频率、等待额度恢复,必要时检查额度 |
| 404 | 优先确认官方接口是否已下线,不要只更换 HTTP 方法 |
| 回调未到达 | 检查公网 HTTPS、网关路由、Token/AESKey 和微信平台配置 |
日常巡检
- 每日:失败 API、未处理告警、失败消息任务和投诉回调。
- 每周:账号健康、授权即将失效、事件积压和发布任务。
- 版本发布前:第三方平台 ticket、模板库、平台域名、体验版和回调地址。
- 密钥轮换后:所有实例解密、账号健康和 token 获取。