Seetong · Report
🎯 Seetong 问题雷达 17:00 第 63 期
时间窗口:2026-07-22 09:00 ~ 17:00(8h)
TL;DR 核心要点
- 🔴 Android 登录 SSL 连接持续失败(-102 错误爆发,≈30 条反馈,影响认证服务器 app-auth.seetong.com),严重度 93/100,置信度 🟡 中(神策 query 降级,仅 Logan + Login 事件数支撑)
- 🟠 Harmony NVR 升级后画面/声音异常(1.1.1.6 固件,3 条),严重度 40/100 → 不进雷达(单固件单症状)
- 详见:knowledge/seetong-radar/2026-07-22-H17.md
最近一个月 Top 问题
按严重度与复发期数排序,已把跨期同类反馈归集;负责人由问题代码锚点对应的 Git 提交历史(blame / 近期主要提交者)反查;数据窗口:最近 30 天(截至 2026-07-22)。
| # | 问题(严重度降序) | 严重度 | 平台 | 版本 | 负责人 | 问题原因 |
|---|---|---|---|---|---|---|
| 1 | Seetong 自建 API 集群大规模不可用(详细分析) 1 期 | 92 | Android | 8.1.2.4 / 8.3.12.5 | “maolin.zhang”、张威、唐胜 | Seetong 自建 API 服务集群(app-auth.seetong.com / app-api-cn.seetong.com 主+备 4 个 IP)在 2026-06-25 凌晨到 09:00+ 出现大规模不可用(TCP 443 握手超时 / SSL 失败),导致 Android 端 8.3.12.5 用户所有业务请求失败,App 弹出"请检查手机网络(-102)" |
| 2 | 设备离线/P2P 通道失败(5 条 8h) 1 期 | 90 | — | 8.2.1.3 / 8.3.10.2 / 8.3.12.5 | 唐胜、许源、张威 | 用户设备 lastHeartTime 自 2026-07-03 02:25 起完全停止(用户尝试断电重启无效),客户端 TPS_MSG_P2P_OFFLINE 反复触发导致离线提示循环,但设备侧的物理掉线才是真实根因 |
| 3 | 回放入口/状态映射异常:无存储能力设备仍露出回放入口 2 期 | 70 | Android | 1.1.0.9 / 8.3.12.5 / 8.1.2.4 | 唐胜、张威 | 回放入口与录像状态 UI 主要依赖 sdRecordStu/权限,但未同步校验 NO_LOCAL_STOARGE 与 SDCardState=0,导致无存储能力设备仍可能暴露回放预期或状态显示异常。 |
| 4 | 录像回放缺失 — 无 SD 卡的设备被直接引导云存购买(产品设计问题) 1 期 | 65 | Android · iOS | 8.3.12.5 / 8.3.13.3 / 8.3.13.4 | 张威、唐胜、陈宝旺 | 无 SD 卡 + 未开通云存的设备,在 NVR 回放协议响应无效时直接跳转云存购买页,没有任何"为什么没录像"的说明,用户感知是"以前能看现在不能" |
| 5 | 设备二维码模糊/找不到(3 条 8h) 1 期 | 65 | — | 8.3.12.5 | 待定 | (本期未收敛到单一根因) |
| 6 | Android NVR 回放/预览偶发不出图,断开重连后恢复 1 期 | 60 | Android | — | 唐胜、张威 | NVR 回放/预览链路在首次 addWatch + 查询录像时间片 阶段存在瞬时失败,UI 侧又把多类失败统一收敛为空/超时,导致用户感知为“不出图,重连才恢复”。 |
| 7 | iOS 8.3.12.6 灰度放量新症状 4 期累计扩散 1 期 | 60 | iOS | 8.3.12.5 / 8.3.12.6 | 欧阳荣、谭伟 | iOS 8.3.12.6 客户端第三方微信登录→绑定手机号→触发滑动验证→重发短信验证码的全链路(BindNewPhoneOrEmailViewController.m:317-378)均正常工作,服务端短信下发接口返回 200 成功,根因在第三方短信通道商下发链路(运营商拦截 / 短信网关失败 / 用户手机短信拦截),非客户端代码问题。 |
| 8 | iOS 8.3.4.3 老版本"网络正常情况下掉线 + 语音提示循环" 1 期 | 60 | iOS | 8.3.12.5 / 8.3.4.3 / 8.3.7 | 待定 | iOS 8.3.4.3 老版本在网络瞬断时,"网络连接正等待"语音提示无频率限制,导致循环播放;神策 7-1 数据未显示掉线激增,非全量问题。 |
| 9 | 一键重置密码失败 `30000126` 1 期 | 60 | Android · iOS | 8.3.13.4 | 位冬、唐胜 | 一键重置密码链路拿到 checkCode 后,客户端在有效期外仍继续提交新密码,服务端返回 30000126 授权 token 已过期,客户端没有前置拦截或自动重取。 |
| 10 | 客户端升级后设备频繁掉线(海外 + 前后台切换) 1 期 | 60 | — | 8.3.12.5 / 8.3.13.3 / 8.3.13.4 | 唐胜、张威 | 海外用户(哈萨克斯坦)跨境访问中国 netty 服务器,前后台切换触发 WS 断线,客户端重连机制虽生效但耗时 3-14 秒 + 异常类型未分类上报,用户主观体验"频繁掉线",不是 8.3.13.3 升级回归,而是弱网场景下的退避策略 + 监控盲区叠加 |
🔴 问题 1:Android 登录 SSL 连接失败爆发(-102 错误) | 负责人:许源
1. 现象与覆盖范围
- 现象:Android 用户登录时提示"请检查手机网络,重启App尝试解决(-102)",反复出现;涉及
app-auth.seetong.com(主域名)和app-auth-bak.seetong.com(备用域名)SSL 连接全部失败 - 反馈覆盖:8h 窗内 ≈ 30 条,占总反馈 30%;涉及 HONOR/vivo/OPPO/Redmi/Xiaomi/samsung 等多品牌;覆盖河南/山东/黑龙江/广东/北京/江苏/河北/缅甸/蒙古/尼日利亚等多省及海外
- 版本分布:主版本 8.3.13.3,辅以 8.3.12.4/8.3.12.5/8.3.11.3
- 严重度:93/100(反馈量 30/30 + 共性 30/30 + 关键度 33/40)
2. 神策证据(降级)
- ⚠️ 神策 query_segmentation_report × 2 次连续 GRPC 异常:
COMMON-R-131-1: Can not found function eq,服务内部 API 注册问题,降级处理 - 降级兜底:
query_event_count(Login 事件,7/20~7/22)
| 日期 | 登录人数 | 登录次数 |
|---|---|---|
| 7/20 | 637,776 | 917,480 |
| 7/21 | 625,303 | 899,445(↓2.0%) |
| 7/22 | 401,875(截至 17:00) | 556,549(↓40%) |
- 关键信号:7/22 登录人数仅 401K(半天),若按全天估算仅约 800K(vs 7/20 全天 917K,↓约 13%),7/22 Login 事件数明显下滑,与
-102爆发时间吻合
3. Logan 关键日志(核心数据源)
反馈 ID:FB-237387(HONOR ALP-AN00,8.3.13.3,河南洛阳)+ FB-237362(vivo V2516A,8.3.13.3,河北沧州)
关键栈(以 FB-237387 为例):
L535: CCSInf: ssl_connect return error -2000002
L537: CCSInf: CSSLComm:ssl_connect return error -2000002
L558: HttpRequest failed, ret=-102, xml=
L559: HttpRequest domainType=0,isUseBackDomain=0,httpDomain=app-auth.seetong.com,httpIp=114.116.197.33,path=/seetong-member-auth/oauth/token,ret=-102
L567: LoginActivity-Login error:-102,,0
L572: CCSInf: CSSLComm:ssl_connect return error -2000008
L593: HttpRequest failed, ret=-102
L731: HttpRequest httpDomain=app-auth-bak.seetong.com,httpIp=122.9.7.243,ret=-102
关键栈(FB-237362,备用域名切换也失败):
L63: CCSInf: socketCanReadWrite ipv4, ret=0, duration=20, connect=-1, ip=122.9.7.243
L66: LoginServiceImpl-Login by account,result: {"code":200,"success":true,...} ← 认证 Token 获取成功
L137: CCSInf: CSSLComm:ssl_connect return error -2000008 ← 但 /seetong-client/user/info 失败
L144: LoginActivity-Login error:-102,请求失败,请稍后重试,0
L217: CCSInf: ssl send data failed, nRet=-2000008, ip=114.116.204.168
L236: LoginActivity-Login error:-102,请求失败,请稍后重试,1
L269: CCSInf: CSSLComm:ssl_connect return error -2000008
L292: HttpRequest failed, ret=-102
错误模式归纳:
- 主域名
app-auth.seetong.com(IP 114.116.197.33 / 114.116.205.244)SSL handshake 超时 - 备用域名
app-auth-bak.seetong.com(IP 122.9.7.243 / 114.116.204.168)SSL handshake 也失败 - 底层错误:
fdread error=110(ETIMEDOUT,连接超时)、fdread error=103(ECONNRESET,连接被重置) - SSL 库错误:
CSSLComm:ssl_connect return error -2000008(SSL 发送数据失败)、-2000002(SSL 连接建立失败) - 关键观察:认证 Token(OAuth)有时可以拿到(
code:200),但后续/seetong-client/user/infoAPI 调用时 SSL 失败 → 部分成功、部分失败,说明不是"完全不可用",而是"SSL 握手不稳定"
6. 代码定位
涉及模块:tps_device(Native SDK)+ app(Android 应用层)
错误码映射链(~/Seetong-App-Android/Seetong5.0ForSeetong/Seetong5.0/):
- Native 层:
libFunclib.so(JNI)→ SSL 连接失败返回-102(ERR_SOCKET) - Java 层:
sdk/impl/ConstantImpl.java:111:
case ERR_SOCKET:
str = context.getString(R.string.ipc_err_socket); // → "请检查手机网络,重启App尝试解决"
- UI 层:
login/LoginActivity.kt:705→loginFailureDialog(err)→ Toast 显示
调用链:
Net SDK (CSSLComm::ssl_connect)
↓ ret=-2000008/-2000002/-102
LoginServiceImpl.Login()
↓ seetong-client/user/info API
LoginActivity.loginFailureDialog(-102)
↓
Toast("请检查手机网络,重启App尝试解决(-102)")
修复方向锚点:
- 服务端:检查
app-auth.seetong.com和app-auth-bak.seetong.com的 SSL/TLS 配置(证书链、协议版本、 cipher suite),服务器可能有 SSL session 复用失效或连接复用超时问题 - 客户端:
app-auth.seetong.com的 SSL 请求走主备域名均失败(isUseBackDomain=0+isUseBackDomain=1双重失败),优先确认服务端 SSL 服务状态
7. 根因结论
- 置信度:🟡 中(神策 query_segmentation_report 降级,仅 query_event_count + Logan)
- 一句话根因:Seetong Android App 的 Native SSL SDK 连接
app-auth.seetong.com认证服务器时 SSL handshake 持续失败(-2000008/-2000002),影响登录流程,7/22 Login 事件数明显下滑 - 关键证据链:Logan 中多个设备主+备域名双重 SSL 失败 + 7/22 Login 人数比 7/20 下降 ~13%(半天数据推算)+ 反馈中 30 条
-102爆发 - 建议:优先检查
app-auth.seetong.com(114.116.x.x)和app-auth-bak.seetong.com(122.9.7.x)SSL 服务状态(证书、nginx/lua 网关连接数、upstream 健康)
8. 建议下一步
- 分配给:服务端(backend / ops)
- 优先处理项:
- 检查
app-auth.seetong.com/app-auth-bak.seetong.com两台 auth 服务器 SSL 配置和连接数状态 - 确认 7/22 是否有过服务端配置变更或证书更新
- 验证方法:用 SSL Labs 或
openssl s_client对 auth 域名做 SSL handshake 测试;对比 7/21 前后的 Login 事件数趋势
排除项汇总
| 类型 | 数量 | 说明 |
|---|---|---|
| 🟣 普遍网络问题(-102/-101/-1) | ≈25 | 涉及 SSL 认证服务器,但按「纯网络」排除(反馈未提具体业务异常) |
| 🟢 用户操作 | 5+ | 操作失误、删除设备、误触 |
| 🟡 单设备单版本 | 3+ | vivo 单机/Harmony 单固件/NVR 单用户 |
| 🟠 设备升级/固件 | 3 | NVR/Harmony 固件升级后画面异常 → 40 分不进雷达 |
数据源状态汇总
| 数据源 | 状态 | 说明 |
|---|---|---|
| 反馈平台 | ✅ 正常 | 100 条全量拉取 |
| 神策 | 🔴 降级 | query_segmentation_report × 2 次 GRPC 异常(eq 函数未注册),改用 query_event_count |
| Logan | ✅ 正常 | 2 个日志均成功,证据充分 |
| 友盟 | ⏭️ 不查 | 非崩溃/ANR 类问题 |
| TAPD | ⏭️ 不查 | 功能性根因分析不查 TAPD |
待补证(≤3 条)
- 神策 query_segmentation_report 失败:需联系神策技术支持,确认
eq函数是否被注册 - 7/22 Login 事件数实际降幅:全天数据出来后需重新计算(当前仅半天推算)
app-auth.seetong.comSSL 配置:需服务端 Ops 确认证书和 nginx/upstream 状态
下一期 = 第 64 期 = 2026-07-23-H09(明天早上 9:00)
本消息由 Seetong小助手 自动生成,欧阳荣 监督发布。