Skip to main content
Web RUM SDK 自动收集丰富的用户行为和性能数据。每个 RUM 事件都包含默认属性(如 view.urldevice.typegeo.country)以及特定事件类型的附加指标和属性。

默认属性

Web RUM SDK 会自动捕获以下默认属性,这些属性适用于所有 RUM 事件类型。
地理位置信息由 FlashCat 后端根据客户端 IP 地址推断,不会在客户端收集精确的 GPS 位置。
您还可以添加自定义用户属性,例如 usr.planusr.role 等。要设置用户信息,请参阅 SDK 接入指南

事件特定属性

不同的事件类型具有特定的属性和指标。
RUM 收集来自 Navigation Timing API 的所有性能指标,以及与 Core Web Vitals 相关的指标。Core Web Vitals导航性能指标网络耗时指标
RUM 会收集来自 Resource Timing API 的详细网络时间信息,用于单个资源的加载。
如果启用了 GraphQL 请求追踪,以下属性会附加到 resource 事件上:
长任务是指阻塞主线程 50 毫秒或更长时间的任务。这些任务会导致高输入延迟、慢速交互或卡顿的动画/滚动。
长任务检测仅在支持 Long Tasks API 的浏览器中可用(Chrome、Edge)。Safari 和 Firefox 不支持此功能。
前端错误通过 RUM 收集。错误消息和堆栈跟踪(如果可用)会包含在内。通用错误属性网络错误属性网络错误包含有关失败 HTTP 请求的信息:
有关不同 JavaScript 错误类型的更多信息,请参阅 MDN 文档
操作时间属性操作标识属性
RUM 会自动检测用户的挫败信号,帮助您了解用户在应用中遇到的问题。
挫败信号是识别用户体验问题的重要指标。死点击和暴怒点击通常表明 UI 响应不及时或交互设计存在问题。
如果 URL 中包含 UTM 参数,RUM 会自动捕获以下属性,用于追踪营销活动:

数据存储

在上传到 FlashCat 之前,数据会以明文形式临时存储在浏览器的本地存储(LocalStorage 或 SessionStorage)中。
1

数据收集

SDK 将事件添加到内存中的批次缓冲区。
2

本地缓存

当网络不可用时,批次会被保留在本地存储中。
3

批次上传

网络可用时,数据以批次形式发送到服务器。
4

自动清理

超过一定时限的数据会被自动清理,以避免占用过多存储空间。
敏感数据不应包含在 RUM 事件中,或者应在发送前通过 beforeSend 回调进行混淆或过滤。

数据上传

Web RUM SDK 会将收集到的事件以批次形式上传到服务器,以优化网络性能和减少对用户体验的影响。

批次上传触发条件

  • 批次中的事件数量达到阈值
  • 批次大小达到阈值
  • 定期上传(例如每 10 秒)
  • 页面卸载时(beforeunload 事件)

上传策略

隐私和合规

IP 地址匿名化

可配置 SDK 对 IP 地址进行匿名化处理

敏感数据过滤

使用 beforeSend 回调过滤或混淆敏感信息

Cookie 和存储控制

可配置是否使用 Cookie 和本地存储

GDPR/CCPA 合规

支持用户隐私选择退出机制
有关隐私配置的详细信息,请参阅 高级配置

更多信息

SDK 接入

了解如何在 Web 应用中接入 RUM SDK

高级配置

了解如何配置 SDK 的高级功能

兼容性

了解 SDK 的浏览器和框架兼容性