网站性能指标设计详解

本文涉及的产品
.cn 域名,1个 12个月
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
简介: 网站性能指标设计详解

image.jpeg


欢迎查看我写的《前端性能优化小技巧》、《快速搭建全链路平台》《四个例子教你提高用户体验》、《裸奔的绿皮车》、《web应用性能简析》、《报错/卡顿是制约产品体验的关键因素


数据类型


用户体验数据包括六种数据类型。


session


用户会话信息记录,当前会话中,将会基于会话维度用户页面、资源、操作、错误、长任务相关访问数据。

view


用户访问页面时,都会生成一个页面查看记录。当用户停留在同一页面上时,资源,长任务,错误和操作记录将通过view_id属性链接到相关的RUM视图。

resource


用户访问页面时,加载的资源信息记录。

error


用户访问监测采集器收集浏览器上的所有前端错误。

long_task


对于浏览器中的任何阻塞主线程超过50ms的任务,都会生成一条长任务记录。

action


跟踪用户页面浏览过程中所有的用户交互记录。

应用数据信息

app_id


必填,用户访问应用唯一ID标识

env


必填,环境字段。属性值:prod/gray/pre/common/local。

version


必填,版本号。

用户 & 会话属性


userid string 未登录用户使用cookie作为userid,登录用户使用应用后台生成的用户id。
session_id string 会话id。
session_type string 会话类型。参考值:user synthetics user表示是RUM功能产生的数据; synthetics表示是headless拨测产生的数据。
is_signin boolean 是否是注册用户,属性值:True / False。


设备 & 分辨率属性


字段 类型 描述
os string 操作系统
os_version string 操作系统版本
os_version_major string 设备报告的主要操作系统版本
browser string 浏览器提供商
browser_version string 浏览器版本
browser_version_major string 浏览器主要版本信息
screen_size string 屏幕宽度*高度,分辨率

地理 & 网络属性


字段 类型 描述
ip string 用户访问IP地址
isp string 运营商
network_type string 网络连接类型,属性值参考: wifi 2g 3g 4g 5g unknown(未知网络) unreachable(网络不可用)
country string 国家
country_iso_code string 国家 iso_code
province string
city string 城市


View 属性


字段 类型 描述
view_id string 每次访问页面时产生的唯一ID
is_active boolean 判断用户是否还在活跃状态,参考值: true false
view_loading_type string 页面加载类型, 参考值:initial_load route_changeroute_change为SPA页面加载模式
view_referrer string 页面来源
view_url string 页面URL
view_host string 页面URL域名部分
view_path string 页面URL path部分
view_path_group string 页面URL path分组
view_url_query string 页面URL query部分


用户属性


除了默认属性以外,还可以通过用户属性构建场景和配置事件告警。用户属性是非全局属性,通过用户属性,可以跟踪用户访问应用的整个过程,定位和发现用户受影响的访问情况,监控用户访问性能。


其他数据类型属性


Session

统计指标


字段 类型 描述
time_spent number(ns) 当前会话持续时长
session_view_count number 当前会话关联view_id个数
session_error_count number 当前会话产生错误个数
session_resource_count number 当前会话加载资源个数
session_action_count number 当前会话用户操作次数
session_long_task_count number 当前会话产生长任务次数

属性


字段 类型 描述
session_id string 会话id(后台停留30s以上,会生成一个新的session_id)
session_type string 会话类型。参考值:user test user表示是RUM功能产生的数据; test表示是headless拨测产生的数据。
session_referrer string 会话来源。一般是记录来源的页面地址。
session_first_view_id string 当前会话的第一个页面的view_id
session_first_view_url string 当前会话的第一个页面的URL
session_first_view_host string 当前会话的第一个页面的域名
session_first_view_path string 当前会话的第一个页面的地址
session_first_view_path_group string 当前会话的第一个页面的地址分组
session_first_view_url_query string 当前会话的第一个页面的query信息
session_last_view_id string 当前会话的最后一个访问页面的view_id
session_last_view_url string 当前会话的最后一个页面的URL
session_last_view_host string 当前会话的最后一个页面的域名
session_last_view_path string 当前会话的最后一个页面的地址
session_last_view_path_group string 当前会话的最后一个页面的地址分组
session_last_view_url_query object 当前会话的最后一个页面的query信息

View


注意:view属性为全局参数,以下仅展示view的其他参数信息

指标


字段 类型 描述
first_contentful_paint number(ns) 首次内容绘制时间(FCP) 计算方式:firstPaintContentEnd - firstPaintContentStart
largest_contentful_paint number(ns) 最大内容绘制(页面加载时间轴中的一刹那,其中呈现了视口中最大的DOM对象) 参考链接:LCP 计算方式:统计最近上报的一次 PerformanceEntry 时间
cumulative_layout_shift number 累计布局版面转移(CLS),0 表示载入过程没有版面移动变化
first_input_delay number(ns) 首次输入延时(FID) 计算方式:performance.now() - event.timeStamp
loading_time number(ns) 页面加载时间 initial_load模式下计算公式: ① loadEventEnd - navigationStart ② 页面首次无活动时间 - navigationStart route_change模式下计算公式:用户点击时间 - 页面首次无活动时间 页面首次无活动时间:页面超过100ms无网络请求或DOM突变
dom_interactive number(ns) DOM结构构建完毕时间 获取方式:time = performanceTiming.domInteractive; 参考链接:MDN dom_interactive
dom_content_loaded number(ns) DOM 内容加载时间 计算方式:domContentLoadedEventEnd - domContentLoadedEventStart
dom_complete number(ns) DOM树解析完成时间 获取方式:time = performanceTiming.domComplete; 参考链接:MDN dom_complete
load_event number(ns) 事件加载时间 计算方式:loadEventEnd - loadEventStart
first_meaningful_paint number(ns) 首屏时间 计算方式:firstPaintContentEnd - firstPaintContentStart
first_paint_time number(ns) 首次渲染时间 计算方式:responseEnd - fetchStart
resource_load_time number(ns) 资源加载时间 计算方式:loadEventStart - domContentLoadedEventEnd
time_to_interactive number(ns) 首次可交互时间 计算方式:domInteratice - requestStart
dom number(ns) DOM解析耗时 计算方式:domComplete - domInteractive
dom_ready number(ns) DOM Ready时间 计算方式:domContentLoadedEventEnd - navigationStart
time_spent number(ns) 页面停留时间

统计指标


字段 类型 描述
view_error_count number 每次页面加载时发生的错误次数
view_resource_count number 每次页面加载时请求的资源个数
view_long_task_count number 每次页面加载时产生的长任务个数
view_action_count number 页面查看过程中操作的次数
view_apdex_level number 页面Apdex满意度。 基础指标:first_paint_time(换算成秒单位) 参考值:0/1/2/3/4/5/6/7/8/9 (根据first_paint_time值,9表示>= 9秒)

Resource

指标


字段 类型 描述
resource_size number 资源大小,默认单位:byte
resource_dns number(ns) 资源加载DNS解析时间 计算方式:domainLookupEnd - domainLookupStart
resource_tcp number(ns) 资源加载TCP连接时间 计算方式:connectEnd - connectStart
resource_ssl number(ns) 资源加载SSL连接时间 计算方式:connectEnd - secureConnectStart
resource_ttfb number(ns) 资源加载请求响应时间 计算方式:responseStart - requestStart
resource_trans number(ns) 资源加载内容传输时间 计算方式:responseEnd - responseStart
resource_first_byte number(ns) 资源加载首包时间 计算方式:responseStart - domainLookupStart
duration number(ns) 资源加载时间 计算方式:duration(responseEnd-startTime)

属性


字段 类型 描述
resource_url string 资源URL
resource_url_host string 资源URL 域名部分
resource_url_path string 资源URL path部分
resource_url_query string 资源URL query部分
resource_url_path_group string 资源URL path分组
resource_type string 资源的类别
resource_method string 资源请求方式
resource_status string 资源请求返回的状态值
resource_status_group string 资源请求返回的状态分组值

Error


指标


字段 类型 描述
error_message string 错误信息
error_stack string 错误堆栈

属性


字段 类型 描述
error_source string 错误来源,参考值:console network source custom
error_type string 错误类型,参考链接:error type
resource_status string 资源请求返回的状态值
resource_url string 资源URL
resource_url_host string 资源URL 域名部分
resource_url_path string 资源URL path部分
resource_url_path_group string 资源URL path分组
resource_method string 资源请求方式

Long Task

指标


字段 类型 描述
duration number(ns) 页面加载时产生的长任务花费时间

Action


指标

字段 类型 描述
duration number(ns) 页面操作花费时间

统计指标


字段 类型 描述
action_long_task_count number 操作关联长任务次数
action_resource_count number 操作关联资源请求次数
action_error_count number 操作关联的错误次数

属性】


字段 类型 描述
action_id string 用户页面操作时产生的唯一ID
action_name string 操作名称
action_type string 操作类型


文章选自《用户数据采集》



目录
相关文章
|
6月前
|
缓存 运维 前端开发
【分布式】衡量网站的性能指标
【1月更文挑战第25天】【分布式】衡量网站的性能指标
|
6月前
北极星指标有哪些优缺点
北极星指标有哪些优缺点
109 0
|
Web App开发 存储 缓存
Web页面优化专项>Lighthouse>性能分数优化
Web页面优化专项>Lighthouse>性能分数优化
491 0
Web页面优化专项>Lighthouse>性能分数优化
|
监控 前端开发 JavaScript
【前端监控】前端性能的重要指标
【前端监控】前端性能的重要指标
250 0
|
前端开发 JavaScript 网络协议
前端性能中重要概念之性能指标
前端性能的重要性及其常见性能指标 在现代Web应用中,前端性能是非常重要的一环。优秀的前端性能可以提升用户体验和满意度,同时也对SEO和商业收益等方面产生重要影响。下面介绍一些前端性能指标,以便开发者评估和优化应用的性能。
223 0
|
SQL 缓存 网络协议
架构师的视角分析系统性能指标
一、一次请求全链路图 步骤一:DNS解析,,用户在浏览器输入URL按回车,请求会进行DNS查找,浏览器通过DNS解析查到域名映射的IP地址,查找成功后,浏览器会和该IP地址建立连接。对应的性能指标为:DNS解析时间。对于这个指标,我们可以通过DNS缓存或DNS预解析,适当增大域名的TTL值来增大DNS服务器缓存域名的时间,进而提升了缓存的命中率。也可以用dns-prefetch标签实现域名的预解析,让浏览器在后台把要用的DNS请求提前解析,当用户访问的页面中包含了预解析的域名时,再次解析DNS就不会有延迟了。 步骤二:建立TCP连接,由于HTTP是应用层协议,TCP是传输层协议,所以HTT
129 0
|
前端开发 JavaScript UED
前端性能分析和错误收集
前端是直面用户的,产品体验尤为重要,而页面性能则是一个非常重要的指标。 如果用户打开页面在2秒以内是比较优秀的,5秒以内是可以忍受的,超过10秒用户一般会选择直接关闭页面。而性能的分析和错误的收集可以帮助我们优化产品应用,对于提升用户体验有极大帮助。
前端性能分析和错误收集
|
运维 算法 安全
系统的三高指标
前面我们将功能性的需求几乎都已经都陈列出来,这些几乎是从外部因素考虑的。但对于运行系统的环境,以及系统的并发能力也是我们需要考虑的,这部分可称为非功能需求。 非功能性需求包括:可用性、并发能力、性能、安全防护能力、水平扩容缩容能力、运维/运营成本等
214 0
|
Web App开发 监控 前端开发
前端如何进行网站性能分析及优化性能
前端如何进行网站性能分析及优化性能
|
数据可视化 持续交付
衡量软件交付性能的4个指标
衡量软件交付性能的4个指标
660 0
衡量软件交付性能的4个指标
下一篇
无影云桌面