本文介绍用户体验监控(RUM) 监控中大盘看板以及控制台涉及的指标字段及指标说明。
大盘看板指标说明
公共指标
指标 | 描述 | 说明 |
PV | 页面访问次数 | 对上报数据中事件类型为页面、行为、资源加载的数据根据 view.id 去重 |
UV | 用户访问次数 | 对上报数据按照 user.id 去重 |
Session 数 | 用户会话次数 | 用户从进入页面到关闭页面作为一次会话,对上报数据按照 session.id 去重 |
人均会话数 | 每个用户发起的会话数 | Session 数 / UV |
人均会话时长 | 用户发起的会话的平均时长 | 计算 max(session.end) - min(session.start) 作为一次会话时长,计算所有会话的总时长 / UV |
资源加载
资源是针对网络请求的归纳,RUM 基于 HTTP 协议和Performance 标准制定。资源加载分为静态资源和 API 两大类别。
指标 | 描述 | 说明 |
资源数 | 资源加载次数 | |
API加载数 | API 请求的次数 | API请求表示资源类型为 xhr、fetch 和 api的一类请求,会更加关注与服务端之间的关联,如响应码、Response 内容等。 |
API 加载失败数 | API 请求失败的次数 | |
静态资源加载数 (CDN 趋势) | 静态资源加载的次数 | 静态资源 (资源类型为 css、javascript、image、media等),关注的是资源类型、CDN、网络稳定性等 |
静态资源加载失败数 (CDN 趋势) | 静态资源加载失败的次数 |
资源加载性能指标
指标 | 描述 | 说明 |
Connect | 与服务器建立连接所花费的时间 | |
DNS | 解析最后一个请求的 DNS 名称所花费的时间 | |
SSL | TLS 握手所花费的时间。 | 如果最后一个请求不是通过 HTTPS,则不会出现此指标。 |
Download | 下载响应所用的时间 | |
Duration | 加载资源所花费的全部时间 |
异常指标
异常是指代码执行过程中发生了预期之外的情况。在不同端侧,异常类型不同。Web / H5 / 小程序端的异常类型包括 JS 错误、白屏、自定义异常,移动端的异常类型包括崩溃、JS 错误、ANR(Application No Responding, Android 应用程序无响应)、自定义异常。
指标 | 描述 | 说明 |
异常次数 | 发生异常的次数 | |
影响用户数 | 异常影响的用户数 | 对上报的事件类型为异常的数据按照 user.id 去重 |
影响会话数 | 异常影响的会话数 | 对上报的事件类型为异常的数据按照 session.id 去重 |
影响页面访问数 | 异常影响的访问页面的次数 | 对上报的事件类型为异常的数据按照 view.id 去重 |
崩溃率 | 崩溃影响会话数占比 | 崩溃影响会话数/总会话数 |
JS 错误率 | JS 影响页面数占比 | JS 影响页面访问量 / 总页面访问量 |
卡顿指标
App 主线程执行超时的情况,影响到了用户正常的使用体验。相对于Exception不同在于,没有「代码执行过程中发生了预期之外的情况」,出现的可能原因是代码效率低、优化不足,也可能是设备的性能问题。对于Android/iOS 系统,主线程连续5秒没有响应,记为一次卡顿。
指标 | 描述 | 说明 |
卡顿次数 | 卡顿发生的次数 | |
卡顿影响用户数 | 发生卡顿的用户数 | 对上报事件类型为卡顿的数据按照 user.id 去重 |
卡顿率 | 卡顿影响页面数占比 | 卡顿影响页面访问量 / PV |
页面性能指标
指标 | 描述 | 说明 |
first_contentful_paint | 首次内容渲染耗时(白屏时间) | 是浏览器首次绘制来自DOM的内容。 例如:文本,图片,SVG,canvas元素等,这个时间点叫FCP。 |
dom_interactive | 首次可交互时间 | 内容可交互时间 |
dom_content_loaded | HTML完全加载时间(DOM Ready 耗时) | 当初始 HTML 文档完全加载和解析时触发事件,无需等待非渲染阻塞stylesheets、images和subframes完成加载 |
dom_complete | DOM | 页面和所有子资源都准备好了。对于用户Loading已停止旋转 |
load_event | 页面完全加载时间 | 页面完全加载时触发的事件。通常是附加应用程序逻辑的触发器。 小于2秒的页面载入时间被认为是优良的,而且高达4秒是可接受的。大于5秒的页面载入时间不仅影响网站的搜索引擎排名,还会严重影响用户体验。 |
largest_contentful_paint | 最大内容渲染耗时 | 页面加载时间线中呈现视口中最大DOM对象(屏幕上可见)的时刻,大于2.5s标记慢 |
first_input_delay | 首次输入延迟耗时 | 从用户第一次与页面交互到浏览器响应之间经过的时间。 |
cumulative_layout_shift | 累积布局配置偏移 | 量化由于动态加载的内容(例如,第三方广告)而导致的意外页面移动,其中 0 表示没有发生变化。 |
启动分析
说明:仅移动端(iOS、Android、HarmonyOS)SDK 会采集启动指标数据。
启动指标,用于跟踪记录并衡量用户打开应用到用户响应之间的时间。该跟踪记录收集的指标为“时长”。分为热启动和冷启动。冷热启动的概念说明如下:
指标名称 | 平台 | 指标定义 |
冷启动耗时 | Android | 从应用的 ContentProvider 完成其 onCreate 方法开始,到第一个 Activity的onResume方法被调用时结束。 |
iOS | 从应用的第一个对象加载到内存时开始,到应用收到 | |
HarmonyOS | 应用冷启动分为5个阶段:应用进程创建&初始化、Application&Ability初始化、Ability/AbilityStage生命周期、加载绘制首页、网络数据二次刷新。 | |
热启动耗时 | All | 应用进程存在时,从后台切换到前台会被判定为热启动。 |
首次启动耗时 | All | 应用安装后第一次打开,或清除应用数据后第一次打开。 |
控制台指标说明
公共字段
文字说明 | 含义 | 示例 |
最近一次上报 | 计算方式: |
|