Seetong · Report

🎯 Seetong 问题雷达 09:00 第86期

时间窗口:2026-08-02 01:00 ~ 2026-08-02 09:00(过去 8h)

📌TL;DR 核心要点

  • 🔴 Android 国际用户 SSL 连接失败(-102)(严重度 80/100,置信度 强)
  • 🟠 iOS 人形追踪加速异常(严重度 65/100,置信度 中)
  • 现象描述:Android 用户(多为中国境外用户)在 App 登录 / 刷新设备列表时遭遇 -102 错误,提示"请检查手机网络,重启 App 尝试解决"。Logan 显示真实错误为 SSL handshake 失败(-2000002),而非用户网络本身问题。

🔥最近一个月 Top 问题

按严重度与复发期数排序,已把跨期同类反馈归集;负责人由问题代码锚点对应的 Git 提交历史(blame / 近期主要提交者)反查;数据窗口:最近 30 天(截至 2026-08-02)。

#问题(严重度降序)严重度平台版本负责人问题原因
1Harmony 1.1.1.6 多用户"离线/看不到监控"聚集(严重度 90/100,置信度 弱)
1 期
90Android · iOS1.1.0.9 / 1.1.1.6待定可能为 Harmony 1.1.1.6 客户端连接信令或 P2P SDK 与 HUAWEI 设备兼容性偶发问题;需补 Logan 才能确认
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 期
70Android1.1.0.9 / 8.1.2.4 / 8.3.12.5唐胜、张威回放入口与录像状态 UI 主要依赖 sdRecordStu/权限,但未同步校验 NO_LOCAL_STOARGE 与 SDCardState=0,导致无存储能力设备仍可能暴露回放预期或状态显示异常。
4在线看不到
1 期
70Android8.3.13.3张威、唐胜NVR 通道预览链路在握手后立即被底层判为 PeerOffLine,APP 按现有逻辑只做快速重试,没有把通道离线与临时连接抖动区分开,最终表现为“在线看不到”。
5多端手机端无回放
1 期
70Android1.1.1.6 / 8.3.13.3冉博麟、李国涛(本期未收敛到单一根因)
6设备离线/掉线后无法预览
1 期
70Android · iOS1.1.1.6 / 8.2.2.1 / 8.3.13.3唐胜、张威设备预览链路在收到 TPS_MSG_P2P_OFFLINE 后直接走离线兜底分支,UI 进入“该设备不在线”,而自动恢复逻辑又被离线判断短路,导致用户感知为“掉线后无法再连上”。
7录像回放缺失 — 无 SD 卡的设备被直接引导云存购买(产品设计问题)
1 期
65Android · iOS8.3.12.5 / 8.3.13.3 / 8.3.13.4张威、唐胜、陈宝旺无 SD 卡 + 未开通云存的设备,在 NVR 回放协议响应无效时直接跳转云存购买页,没有任何"为什么没录像"的说明,用户感知是"以前能看现在不能"
8设备二维码模糊/找不到(3 条 8h)
1 期
65—8.3.12.5待定(本期未收敛到单一根因)
9Android NVR 回放/预览偶发不出图,断开重连后恢复
1 期
60Android—唐胜、张威NVR 回放/预览链路在首次 addWatch + 查询录像时间片 阶段存在瞬时失败,UI 侧又把多类失败统一收敛为空/超时,导致用户感知为“不出图,重连才恢复”。
10Android 监控预览 addWatch 失败 + 10 秒循环重试
1 期
60Android8.3.13.3唐胜Android 端 LibImpl.startPlay 把 addWatch 返回的 P2P 断连错误码(-1)通过 if (ret == SDK_CONSTANT.ERR_P2P_DISCONNECTED) ret = 0; 强制归零,导致上层误以为流启动成功,进入 10 秒循环重试;用户看到的"长时间缓冲"实质是 10 秒 × N 次的循环重试视觉感受

🔴 问题 1:Android 国际用户 SSL 连接失败(-102)(详细分析) | 负责人:张威、唐胜

1. 现象与覆盖范围

  • 现象描述:Android 用户(多为中国境外用户)在 App 登录 / 刷新设备列表时遭遇 -102 错误,提示"请检查手机网络,重启 App 尝试解决"。Logan 显示真实错误为 SSL handshake 失败(-2000002),而非用户网络本身问题。
  • 涉及反馈:~40 条(8h 内),占反馈总量最大单类;累计版本 8.3.13.3 / 8.3.14.2 占绝对多数
  • 设备品牌:Xiaomi / vivo / OPPO / Samsung / HUAWEI / HONOR / realme / Redmi 等,覆盖 15+ 国家/地区(缅甸 / 越南 / 俄罗斯 / 伊朗 / 阿尔及利亚 / 老挝 / 美国 / 乌兹别克斯坦 / 中国各省)
  • 严重度评分:80/100(反馈量 30 + 共性广度 30 + 关键度 20)

2. 神策证据(核心数据源,降级)

  • ⚠️ 数据源状态:query_segmentation_report 因 filter 语法限制(neq/not_equal_to 函数不支持)连续 2 次失败,按规则降级
  • query_event_count(Login)正常:近 7 天 Login 总次数 ~90-101 万/天,趋势稳定,今日为半天数据(13 万)无异常
  • 降级说明:无法直接拿到 error_code 分布,但 Logan 日志提供了等效的 SSL 失败证据链

3. Logan 关键日志(核心数据源,必须含类名:行号 + 错误码)

反馈 ID:FB-239977(Xiaomi 25019PNF3C,缅甸)

  • 关键栈:
  • CSSLComm::ssl_connect → 返回 -2000002(Funclib/SSLComm.cpp:398)
  • CCSInf::SocketPost → 泛化为 ERR_SOCKET = -102(Funclib/Funclib.h:558)
  • BaseRepository → 触发 loginFailureDialog(App 层)
  • 错误码链路:
  • ssl_connect return error -2000002 = SSL socket 创建失败(Funclib/SSLComm.cpp:326/398)
  • HttpRequest failed, ret=-102(CSInf.cpp:2003)
  • 用户看到:"请检查手机网络,重启App尝试解决(-102)"
  • 触发条件:
  • DNS 解析到 app-auth.seetong.com → IP 129.227.87.49(中国节点)
  • socketCanReadWrite ipv4, ret=-3000004, fdread error=111(ECONNREFUSED,服务器端口 443 被拒)
  • SSL 握手在 20-7000ms 内超时失败
  • 国际域名:app-auth-gbl.seetong.com 仍失败(越南用户日志:IP 18.67.221.70,AWS 全球节点)

反馈 ID:FB-239974(Samsung SM-A065F,越南)

  • 用户 IP:171.234.133.87,DNS 解析到 app-auth-gbl.seetong.com → 18.67.221.70
  • SSL 握手超时 7007ms 后失败:duration=7007, ssl_connect return error -2000002
  • 域名切换:isForceSwitch=0,未触发备用域切换(m_bUseUserBackDomain=1 静默跳过)

6. 代码定位(详细)

  • 涉及模块:Seetong-CliCmpt-Net-Sdk/Funclib/(Android/iOS 共享 C/C++ 网络 SDK)
  • 关键类:
  • CSSLComm(Funclib/SSLComm.cpp,SSL 连接封装)
  • CCSInf(Funclib/CSInf.cpp,HTTP 请求 + SSL 封装层)
  • Funclib.h:558:ERR_SOCKET = -102(泛化错误码定义)
  • 调用链:

App LoginActivity → LoginServiceImpl → funclib RequestHttp → CCSInf::SocketPost → CSSLComm::ssl_connect → 返回 -2000002 → 映射 -102

  • 关键分支:
  • CSSLComm::ssl_connect 返回 -2000002 条件:m_sockfd == -1(socket 创建失败)或 SSL 握手失败被映射为 socket 错误
  • CSInf.cpp:2003:HttpRequest failed, ret=%d 日志记录,ret = ERR_SOCKET = -102
  • 修复方向锚点:
  1. Funclib/SSLComm.cpp 第 326 行:-2000002 的真实根因是 socket fd 创建后 connect() 调用失败(ECONNREFUSED),而非证书问题。需确认服务器 443 端口对国际 IP 的可达性。
  2. CSInf.cpp 第 2003 行:错误信息需区分"SSL socket 连接失败(-2000002)"与"真正无网络",当前统一返回 -102 导致用户误判。
  3. app-auth-gbl.seetong.com 全局域名 SSL 证书或 TLS 版本配置问题(越南用户连 AWS 节点 18.67.221.70 仍失败)。

7. 根因结论

  • 置信度:🟢 强
  • 一句话根因:国际用户连接 Seetong 服务器时 SSL socket 连接失败(ECONNREFUSED/超时),SDK 将 -2000002 泛化为 -102,用户看到误导性提示"请检查手机网络"。
  • 关键证据链:
  • Logan 日志:多国用户 ssl_connect return error -2000002(Funclib/SSLComm.cpp:398)
  • Logan 日志:DNS 解析到中国节点 IP 129.227.87.49,端口 443 被 ECONNREFUSED
  • Logan 日志:全局域名 app-auth-gbl.seetong.com → 18.67.221.70 仍 SSL 失败
  • 反馈批量集中(~40 条/8h),多品牌多国,规律性强

8. 建议下一步

  • 分配给:服务端网络组 + Android SDK 维护者
  • 优先处理项:
  1. 排查国际用户连接 app-auth.seetong.com 443 端口是否被防火墙/运营商拦截(重点:缅甸/越南/俄罗斯)
  2. 确认 app-auth-gbl.seetong.com 全局域名 SSL 证书有效性(越南用户连 AWS 仍失败)
  3. SDK 层错误提示区分:ssl_connect 失败应提示"服务器连接异常"而非"请检查手机网络"
  • 验证方法:海外节点实测(VPN + 海外真机测试);抓包确认 443 SYN 是否收到 RST

🟠 问题 2:iOS 人形追踪加速异常(可选)

1. 现象与覆盖范围

  • 现象描述:iOS 用户(iPhone 16,8.3.13.4)反馈"人形监控时,有人路过跟开了加速一样,瞬间就过去了"——AI 检测后录像回放帧率异常加速。
  • 涉及反馈:1 条(单设备,无共性)
  • 严重度评分:65/100(反馈量 10 + 共性广度 10 + 关键度 30 + 录像回放)

2. 神策证据

  • ⚠️ 未调用(单条反馈,共性不足,数据源价值有限)

3. Logan 关键日志

  • 反馈 ID:FB-239910(iPhone 16,iOS 8.3.13.4)
  • Logan 下载失败(OBS 文件不存在)
  • 无 Logan:记录"Logan 未提供,根因分析受限"

4. 代码定位

  • 关键词:人形 / 加速 / motion detection / AI 检测帧率
  • 可能在模块:Seetong-App-iOS/ → MonitorPlayerViewController 或 AI 相关的 AIDetector 类
  • 修复方向:检查 AI 检测触发后的录像回放帧率控制逻辑

5. 根因结论

  • 置信度:🔴 弱(单条 + 无 Logan + 无神策证据)
  • 一句话根因:AI 检测触发后录像回放帧率控制异常,Logan 未提供,无法定位具体原因

6. 建议下一步

  • 联系用户获取 Logan(如有)
  • 检查 iOS AI 检测回调与录像回放模块的帧率同步逻辑

本期扫描全量(全部沉淀到知识库)

#关键词反馈数分类处置
1-102 网络异常(国际SSL失败)~40🔴 进雷达详细分析见上
2人形追踪加速(iOS)1🟠 进雷达详细分析见上
4设备离线/掉线8🔴 功能性问题(未进TOP2)现象与问题1重叠
5监控无图像/卡顿3🟡 配置/设备问题已排除
6心愿单功能建议~25🟤 心愿单建议已排除
7杂音/音频异常(Harmony)2🟡 单设备已排除
8监控无法查看回放2🟡 版本老旧(8.1.2.4)已排除
9其他闲聊/无效~10🟢 已排除已排除
已折叠 1 条普遍性网络问题(含 -102/-101/-1002 与中/英/俄/法/西/葡/土/阿/日多语言网络提示模板,如 Проверьте телефонную сеть、Please check your mobile network);全量明细见同名 Markdown 知识库。

数据源状态汇总

数据源状态降级说明
反馈模块✅ 正常100 条全部拉取
心愿单✅ 正常用于排除产品建议
神策 query_segmentation_report❌ 降级neq/not_equal_to 函数不支持,连续 2 次失败;改用 query_event_count 验证 Login 总量正常
神策 query_event_count✅ 正常Login 近 7 天 ~90-101 万/天,趋势稳定
Logan 日志✅ 成功3 个代表性样本下载成功,关键证据链完整
友盟⏭️ 跳过非崩溃/ANR 类
TAPD⏭️ 跳过无已知 BUG 单号,功能性根因分析不查

待补证(≤ 3 条,每条 ≤ 50 字)

  • 神策无法按 error_code 过滤 → 建议下次用 query_sql 验证 login_fail_type 字段分布
  • iOS 人形追踪加速 Logan 未提供 → 建议联系用户补 Logan 或复现测试
  • app-auth-gbl.seetong.com SSL 失败根因 → 需服务端确认海外 443 端口可达性

下一期 = 第87期 = 2026-08-02-H17(今天下午 17:00)

本消息由 Seetong小助手 自动生成,欧阳荣 监督发布。

🗂️历史期次

查看全部历史期次(近 90 天)→