# PageSpy

PageSpy 是一款用来调试 Web / 小程序 / ReactNative 鸿蒙 APP 等平台项目的服务。

## 使用背景

控制台在日常开发中是必不可少的效率工具，项目问题总是第一时间通过它排查。但有时候无法使用控制台，因此而导致排查问题需要花费很多时间和人力，这就是 PageSpy 想去解决的问题。

看看下面的场景你是否遇到过：

- **真机调试 H5**：以往有些产品提供了可以在 H5 上查看信息的面板，但真机屏幕太小操作不便、显示不友好，以及数据会被截断；
- **远程办公、异地协同**：传统沟通方式如邮件、电话、视频会议等，沟通问题的周期长、效率不高、故障信息不全面，容易误解误判；
- **用户设备白屏**：除了需要提前获知出现问题的用户信息，定位问题的方式包括查看数据监控、日志分析，甚至还要跑到客户现场等，这些方式依赖排障人员要理解业务场景、技术实现；
- **全局的 "问题反馈" 组件**：大多注重用户体验的网站，为了在产品出现故障后能收到反馈并及时解决，会在产品端为用户提供反馈问题的表单组件。从用户的角度这确实会提升好感，但用户提交的内容可能对于排查问题的帮助并不大，根本原因是：用户提交的基本上是文字概述和截图，或许还包含用户信息，但开发者更希望看到的是：

  - 用户的操作轨迹；
  - 伴随着操作，程序的运行时行为数据。例如：打印的日志、发出的网络请求以及响应数据等内容；

上述场景中列举的问题的共同点是：**开发者无法像使用本地控制台一样查看程序运行信息**。你也被这些问题困扰了吗？那 PageSpy 可以给你一些帮助。

## 主要功能

- **PC 端调试**：UI 交互符合开发者习惯、大屏看着更清晰；
- **多面板信息**：提供 Console / Network / Storage / System / Page 调试面板；
- **多平台的 SDK**：Web / 小程序 / ReactNative / 鸿蒙的 SDK 开箱即用，接入简单；
- **在线实时调试**：基于 WebSocket 连接实时查看客户端运行数据；
- **(离线)日志回放**：提供上传 / 下载日志功能，开发者通过日志可以回放用户操作，同时可选的可以进入离线模式；

## 相关链接

- 官方文档：<https://pagespy.org>
- GitHub 开源仓库：<https://github.com/HuolalaTech/page-spy-web>
- B 站视频：<https://space.bilibili.com/3493272492181886>
