Xiaonuan Sync Health
小暖同步报告
生成时间:2026/08/09 00:10:01。本报告只统计 booking.import_runs、booking.import_source_records、booking.import_conflicts、booking.sync_dead_letters 和同步定时任务;不把 booking 里的本地 SSOT(单一事实来源)业务数据算作小暖同步债务。
现在一句话看懂
有待处理
同步能跑,但还有问题没清完。
存在阻断同步仍在跑
系统没有停,但还有记录卡着,需要继续处理。
先看这 4 个数
今天新增问题
0
今天新出现、还需要处理的问题。
历史未清问题
1512
今天以前留下、现在还没处理完的问题。
最近 24 小时
看最近几次同步跑了什么、有没有卡住。
最近一批
成功
类型:正式执行
客户:0/264
宠物:0/571
跳过:37,问题:0,失败:0
备注:小暖热点客户宠物补偿
上前一批
成功
类型:正式执行
客户:0/3300
宠物:0/4001
跳过:0,问题:0,失败:0
同步节奏
关注
每小时:是
随机延迟:600
上次执行:unknown
现在什么情况
先看真卡住的,再看排队的。
真卡住的
1512
会影响同步判断,要先处理。
在排队的
25
还在等处理,不等于坏了。
预计时间:大约 1 小时内
最多的是 客户 的 字段不一致,一共 68388 条。
卡住的记录已经分成忽略、修复和重放,不再一锅端堆着。
试跑时看到的问题还会显示,但不算生产问题。
同步进度
Timer 负责定时触发,Service 是一次性任务,跑完会退出。
Timer 状态
inactive
任务当前状态
已退出
小时级同步
是
随机抖动
600
最近一次成功
2026/07/08 12:13:35
下一次执行
unknown
下一批从哪开始
6600
源记录总数
1522932
统计范围
这里只看同步本身,不混本地业务数据。
本报告只统计 booking.import_runs、booking.import_source_records、booking.import_conflicts、booking.sync_dead_letters 和同步定时任务;不把 booking 里的本地 SSOT(单一事实来源)业务数据算作小暖同步债务。
可信度
生成时间:2026/08/09 00:10:01
同步来源:小暖同步健康
页面更新:自动生成
详细数据
默认看最近 12 条。点页码可以翻到更早的记录。
最近一批
起点 = 从第几条源记录开始处理。
每批多少条 = 这一轮最多处理多少条。
| 开始时间 | 结果 | 模式 | 从哪开始 | 每批多少条 | 客户新增/更新 | 宠物新增/更新 | 跳过 | 冲突 | 失败 | 备注 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026/07/08 12:13:35 | 成功 | 正式执行 | 0 | 300 | 0/264 | 0/571 | 37 | 0 | 0 | 小暖热点客户宠物补偿 |
| 2026/07/08 12:09:32 | 成功 | 正式执行 | 3300 | 3300 | 0/3300 | 0/4001 | 0 | 0 | 0 | 小暖客户宠物小时级同步 |
| 2026/07/08 11:07:58 | 成功 | 正式执行 | 0 | 300 | 0/94 | 0/571 | 207 | 0 | 0 | 小暖热点客户宠物补偿 |
| 2026/07/08 11:03:28 | 成功 | 正式执行 | 0 | 3300 | 0/3299 | 0/5829 | 2 | 0 | 0 | 小暖客户宠物小时级同步 |
| 2026/07/08 10:14:01 | 成功 | 正式执行 | 0 | 300 | 0/296 | 0/562 | 5 | 0 | 0 | 小暖热点客户宠物补偿 |
| 2026/07/08 10:10:10 | 成功 | 正式执行 | 9900 | 3300 | 0/971 | 0/1126 | 0 | 0 | 0 | 小暖客户宠物小时级同步 |
| 2026/07/08 08:09:45 | 成功 | 正式执行 | 0 | 300 | 0/243 | 0/562 | 58 | 0 | 0 | 小暖热点客户宠物补偿 |
| 2026/07/08 08:05:58 | 成功 | 正式执行 | 6600 | 3300 | 0/3300 | 0/3651 | 0 | 0 | 0 | 小暖客户宠物小时级同步 |
| 2026/07/08 07:09:50 | 成功 | 正式执行 | 0 | 300 | 0/270 | 0/562 | 31 | 0 | 0 | 小暖热点客户宠物补偿 |
| 2026/07/08 07:05:47 | 成功 | 正式执行 | 3300 | 3300 | 0/3300 | 0/4001 | 0 | 0 | 0 | 小暖客户宠物小时级同步 |
| 2026/07/08 06:10:24 | 成功 | 正式执行 | 0 | 300 | 0/88 | 0/562 | 213 | 0 | 0 | 小暖热点客户宠物补偿 |
| 2026/07/08 06:06:26 | 成功 | 正式执行 | 0 | 3300 | 0/3299 | 0/5829 | 2 | 0 | 0 | 小暖客户宠物小时级同步 |
默认展示最近 12 条。页码越大,记录越早。当前共 3 页。
问题列表
| 类型 | 冲突 | 模式 | 状态 | 时间 | 数量 |
|---|---|---|---|---|---|
| 客户 | 手机号重复 | 试跑 | 试跑忽略 | 历史 | 10 |
| 客户 | 字段不一致 | 正式执行 | 按规则处理 | 历史 | 68388 |
| 客户 | 手机号无效 | 试跑 | 试跑忽略 | 历史 | 1 |
| 客户 | 手机号无效 | 正式执行 | 身份不对,已跳过 | 历史 | 233 |
| 宠物 | 宠物找不到主人 | 试跑 | 试跑忽略 | 历史 | 19 |
| 宠物 | 宠物找不到主人 | 正式执行 | 找不到主人,已跳过 | 历史 | 233 |
排队中的记录
| 类型 | 状态 | 数量 |
|---|---|---|
| 客户 | 有问题 | 6 |
| 客户 | 试跑忽略 | 11355 |
| 客户 | 已导入 | 612488 |
| 客户 | 已跳过 | 13339 |
| 客户 | 身份不对,已跳过 | 233 |
| 宠物 | 有问题 | 19 |
| 宠物 | 试跑忽略 | 9373 |
| 宠物 | 已导入 | 14961 |
| 宠物 | 已跳过 | 860925 |
| 宠物 | 找不到主人,已跳过 | 233 |
卡住的记录
| 状态 | 数量 | 说明 |
|---|---|---|
| 待处理 | 1512 | 需要清账处理 |
| 已修复 | 22 | 已修复 |
同步规则
数据怎么走
小暖远端 -> 小暖源库 -> 本系统正式库 -> 前端
外部数据先进入小暖源库,再由本系统做增量导入、冲突处理、死信处理和页面展示。这个页只讲同步健康,不把本地 SSOT 业务数据混进来。
客户怎么拉
小时级拉取客户快照,本系统按小暖 ID、手机号和 payload hash 幂等导入;我们的 owner_id 始终是主键。
客户按小时级快照拉取。判断变化时看小暖 ID、手机号和 payload hash,不依赖更新时间字段。这样能避免更新时间不准、丢时间戳、局部字段变更漏报的问题。
预约等记录怎么拉
小时级同步最近 30 天业务记录:appointments、bchecks、xrays、lab_reports_all、paid_payments,并使用重叠窗口和 hash diff。
预约、检查、化验、收费这些有业务时间含义的记录,按时间窗口拉取,再加重叠窗口和 hash diff。这样更适合增量同步,不需要每条都硬扫,也能补到迟到数据。
宠物怎么补
不高频远端全量扫 pets;宠物由热点客户、业务线索和夜间低速全量补偿进入正式库,避免对小暖远端造成不必要压力。
宠物不高频全量扫。优先走热点客户、业务线索和夜间低速补偿三条路,白天尽量轻,夜里补完。目标是兼顾稳定和覆盖,避免把小暖远端打爆。