Session Replay产品调研分析

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: Session Replay产品调研分析

Session Replay,可以译为会话回放、会话追踪,相关商业化软件的目的在于提供给用户在网站中记录和回放浏览者的会话的能力,用户体验团队、产品团队、营销团队往往会利用这些 Session Replay 产品提供的清晰的交互画面,进行一系列的数据分析,以便了解浏览者真实的使用体验并进行针对性的优化,这其中包括但不限于:


  • 核心功能的交互路径
  • 遇到的错误
  • 一些困惑的使用交互

产品视图

结合G2商业化软件的搜索结果和G2评分排名,我们可以看到老牌劲旅 Dynatrace,以及专注于做会话分析的LogRocket、fullstory名列前茅,更多维度的比较和排名可以参考:https://www.g2.com/categories/session-replay?utf8=%E2%9C%93&order=g2_score

本文接下来将会从功能使用、隐私处理和问题三个方面,挑选 Dynatrace 和 LogRocket 进行产品进行调研和分析

Dynatrace

Dynatrace 作为 APM 领域的佼佼者,在可观测性方面的产品能力一直保持领先,单看 Session Replay 这一项功能,其可配置项几乎是同类产品中最多的,首先看看功能

功能

通过其控制台 Web 页签,创建一个 Web 类型的应用,利用 Agentless 的方式注入 JavaScript 的探针采集一些网页的基础数据


此时,我们可以清晰的看到一张当前网页各类分析的仪表盘,并提供了详细分析的入口,其中包含了

  • 会话分析
  • 性能分析(页面加载、用户交互性能分析)
  • 用户行为分析(Top action、event)
  • 错误分析
  • 网站可用性分析
  • 域名分析
  • 页面访问分布

本文不做具体展开,后续会有专门的文章来讲解 Dynatrace 的 Web APM 功能,本文重点看会话分析相关功能

点击网页右上角的用户会话分析按钮,我们可以进入一个会话分类搜索的页面,这里我们看到可以通过各类过滤条件进行筛选,比如应用名、应用类型、浏览器类型、浏览器版本、地理位置等,下面就是根据过滤条件得到的结果,包含了此类型会话的一些基础信息(平均时长、会话数、平均访问情况等)

进入具体的页面能看到该类型会话的具体每一个会话列表,如果打开了 Session Replay 功能,则可以进入 Replay 页面进行查看

隐私处理

从上面的动图可以看到,回放时候,页面的绝大部分被 * 所替代,大多数类似的产品在设计功能的时候都需要考虑用户隐私,毕竟采用录屏的方式去获取浏览者的访问行为,很大程度上会带来用户隐私的挑战。在 Dynatrace 中,主要提供了以下几个功能:

  1. 设置录制开关

首先我们可以看到,Dynatrace 提供了一个开关来供用户进行可操作的 Session Replay 模式,打开这个模式的时候,Dynatrace 中的 Session replay 功能需要用户在代码中手动调用 enableSessionReplay 从而开始录制数据的采集,这样用户就可以根据一些页面url、特定访问路径,来灵活的控制什么时候进行页面数据的录制

  1. 录制数据的敏感信息屏蔽

另外可以看到,Dynatrace 提供了几个敏感数据屏蔽的等级,可以依据自身网页的特点,对录制数据的关键信息进行屏蔽,比如承载用户输入的 input 框这类敏感操作,就可以利用 Mask user input 这个等级进行处理。

问题

由于录制页面并不是传统的录屏技术,而是采用的浏览器增量快照的形式,具体的浏览器录制技术可以参考之前写的调研文章:浏览器录制技术,所以存在很多录制内容的限制,Dynatrace 也在文档中有所说明

我们也可以看到,利用DOM增量快照的形式,无法录制的环节主要就会集中在以下3个方面的内容

  • 特殊的标签:媒体元素、Canvas、WebGL、浏览器控件等
  • Iframe:跨越了Frame的方式,无法保证同源和 Iframe 内部的脚本
  • 过期的资源或者需要权限访问的私人资源,包括但不限于图片资源、CSS样式资源、URL外链

LogRocket

功能

相对于 Dynatrace 非常庞大的功能组合,LogRocket 非常简单轻量,LogRocket几乎只专注于用户行为分析方面的研究和深入,提供访问日志、会话分析、错误分析、时序分析、路径分析、热力图等功能,整理而言都是为了用户体验、用户行为分析服务,我们可以看到功能分布也十分清晰

会话分析部分,也是包含了一些会话的基本内容(发生时间、时长、浏览器版本、IP等),也可在很明显的位置看到回放的按钮。

在会话回放的页面,我们可以看到 LogRocket 除了提供基本的回放窗口以外,还提供了类似 Chrome 的 Devtool 工具,从而帮助用户从性能、访问栈的维度,对此次回放进行更深层次的分析,另外回放的进度条上也标注了错误的点,toolbar 也和 Dynatrace 类似,提供了倍数、跳过无交互阶段、全屏、键盘事件等一系列的功能。

隐私处理

LogRocket 并未像 Dynatrace 一样提供了几个等级的隐私策略,而是利用几种规则来处理:

  • 通过data-private标签来指定具体的 DOM 块进行屏蔽
  • 通过两个配置 textSanitizer 和 inputSanitizer 来进行配置,对 text 和 input 单独处理,类似 mask-all 和mask-user-input 的屏蔽等级
  • 通过data-public也可以屏蔽掉的元素显示置回来

问题

和 Dynatrace 一样,基于 DOM 增量快照录制的方式,几乎都有类似的问题,比如 CSS 资源不可访问、Shadow DOM等,更多的详情可以参考:https://docs.logrocket.com/docs/troubleshooting-sessions


写在最后

Session Replay 技术目前应用的领域主要还是集中于用户行为分析,错误定位等场景,还有类似 FullStory 的不仅仅有自身的方案,还提供了和集成的能力,比如监控领域很出名的 Sentry 就是采用的FullStory的集成方案来透出 Session Replay 的相关功能,而绝大部分商业化产品都是提供了一个大而全的数字化分析方案,Session Replay 只是其中很小的一环,需要结合日志数据、时序数据、全链路Trace、机器学习等方案进行全方面的分析。

相关文章
|
5月前
|
存储 人工智能 运维
云栖实录:重构可观测 - 打造大模型驱动的云监控 2.0 与 AIOps 新范式
大模型时代驱动智能运维变革,阿里云通过统一可观测平台、UModel数字孪生与AIOps Agent,实现数据、认知、决策的全链路升级,重构运维新范式。
924 1
|
10月前
|
存储 人工智能 运维
阿里云联合信通院发布《面向LLM应用的可观测性能力要求》
随着大模型技术的广泛应用,大语言模型(LLM)在对话系统、检索增强生成(RAG)、智能体(Agent)等场景中展现出无限的想象力与创造力。同时,基于 LLM 以及 AI 生态技术栈构建的应用以及业务场景也如雨后春笋般不断涌现。然而,LLM 应用在生产落地过程中面临着模型不确定性大、架构链路复杂、用户体验难以评估等诸多痛点。如何构建 LLM 应用的全链路可观测性体系以及如何评估可观测性能力是否完善,业界缺乏统一且完整细致的标准。
|
自然语言处理 Dubbo Java
【面试问题】Dubbo 推荐用什么协议?
【1月更文挑战第27天】【面试问题】Dubbo 推荐用什么协议?
|
移动开发 JavaScript 前端开发
白话 uni-app,细说 uni-app 和传统 H5 的区别
白话uni-app 本文适合对象: 已经通过uni-app官网对产品概念有了了解,看过uni-app的官方视频介绍 熟悉h5,但对小程序、vue不了解 传统的h5只有1端,即浏览器。而uni-app可跨7端,虽仍属前端,与传统h5有不同。
12317 0
|
6月前
|
机器学习/深度学习 人工智能 前端开发
终端里的 AI 编程助手:OpenCode 使用指南
OpenCode 是开源的终端 AI 编码助手,支持 Claude、GPT-4 等模型,可在命令行完成代码编写、Bug 修复、项目重构。提供原生终端界面和上下文感知能力,适合全栈开发者和终端用户使用。
53025 11
|
9月前
|
JSON API 数据格式
小红书商品详情API数据解析(附代码)
本内容介绍了小红书商品详情API的使用方法,涵盖接口功能、数据结构及Python请求示例。适用于电商分析、市场研究,助力商家优化运营策略。
|
数据采集 JSON 数据格式
Python大麦网演唱会数据爬取
Python大麦网演唱会数据爬取
1448 0
|
存储 人工智能 搜索推荐
【LangChain系列】第六篇:内存管理简介及实践
【5月更文挑战第20天】【LangChain系列】第六篇:内存管理简介及实践
908 0
【LangChain系列】第六篇:内存管理简介及实践
|
SQL 存储 关系型数据库
【最佳实践】使用 Elasticsearch SQL 实现数据查询
如何使用 Elasticsearch SQL 来对我们的数据进行查询。
6954 0
【最佳实践】使用 Elasticsearch SQL 实现数据查询
|
Java API 数据库
Squirrel(松鼠)状态机的介绍及使用
Squirrel(松鼠)状态机的介绍及使用
4265 1
Squirrel(松鼠)状态机的介绍及使用