什么是会话回放?
想象一下,在用户浏览您的网站时坐在他们身旁。那会很棒,不是吗?您可以亲身体验他们遇到的各种问题,并看到他们无法理解、感到沮丧的应用部分。
现在再想象一下,当这些问题出现时,您可以把他们移到一旁,打开他们浏览器的开发者工具,弄清楚到底哪里出了错。这难道不令人惊叹吗?
这正是会话回放发挥作用的地方。它让您能够观察用户如何浏览您的 Web 应用,并看到幕后发生的一切,从而在出现任何问题时轻松复现当时的情形。
会话回放有哪些替代方案?
市面上有若干替代方案可以为您提供会话回放所带来的部分优势。可以将它们分为两类:监控工具和产品分析工具。
监控工具
这一类别充满了针对应用不同技术层面的解决方案。例如,像 New Relic 或 Dynatrace 这样的应用性能工具非常适合跟踪后端的慢速代码或与数据库之间性能不佳的事务。然而,这只向您展示了故事的一面:后端,而您仍然需要前端的状态。
相反,您可以只专注于错误,依靠像 Sentry 这样的错误跟踪工具。即便如此,在尝试复现缺陷时您仍会力不从心,因为您永远无法掌握完整的上下文,比如用户的行为、网络活动、调试日志,甚至某一时刻的应用状态。
您还可以添加真实用户监控(RUM)工具,它能让您跟踪其他方面,例如应用性能、加载时间(包括 web vitals 指标)、失败的请求等等。但您仍然会缺少观看会话回放所带来的上下文。RUM 的完美补充就是会话回放,因为它提供了只能通过视觉获取的信息:
- 我们网站的设计是否让您的客户误用了错误的功能?
- 用户是否在该字段中输入了过多数据,因而导致应用崩溃?
- 错误信息对用户的可见时间是否足够长,让他们得以读完?
这些都是您无法用 RUM 工具回答的问题,而这正是使用会话回放的主要优势之一。
所有这些监控工具都很出色,但它们只讲述了故事的一面。借助会话回放,您可以确切地看到发生了什么以及哪里出了错,就好像您坐在用户身旁一样。这些视觉和技术线索让解决任何问题都变得轻而易举。
产品分析
另一方面,像 Mixpanel 或 Amplitude 这样的产品分析工具通过事件来跟踪用户参与度和产品功能的使用情况。尽管它们非常适合了解用户如何与您的应用交互,但它们缺乏关于这些事件之间发生了什么的上下文。
例如,产品分析会告诉您用户开始了结账流程但没有完成。然而,它不会揭示为什么会这样。是因为表单难以填写吗?是否存在阻止他们完成购买的缺陷?会话回放可以帮助您理解数据背后的"为什么"。
它们如何比较
让我们比较这些不同类型的工具,以理解它们如何相互补充:
| 工具类型 | 优势 | 局限 |
|---|---|---|
| 会话回放 |
|
|
| 监控工具 |
|
|
| 产品分析 |
|
|
我应该添加会话回放吗?
如果您想知道您的组织是否需要会话回放,请问自己这些问题:
- 您是否难以复现用户报告的缺陷?
- 您的团队是否花费过多时间试图理解用户的问题?
- 您是否想确切地看到用户如何与您的产品交互?
- 您是否希望改善用户体验,却缺乏具体的洞察?
- 您的产品分析是否揭示了问题,却没有揭示其原因?
如果您对其中任何一个问题回答"是",那么会话回放可能会成为您工具箱中无价的补充。请记住,它作为全面的监控与分析策略的一部分时效果最佳,而非作为独立的解决方案。
会话回放解决的问题
会话回放工具可以服务于同一家公司内的许多不同领域,这让选择合适的方案变得更加困难。
- 想看看用户如何与全新的设计更新互动?会话回放为您搞定!
- 正在弄清楚应用为何不断崩溃?会话回放可以回答这个问题。
- 好奇用户对新发布功能的反应?您猜对了,会话回放同样可以帮上忙!
让我们看看会话回放工具大显身手、无人能及的一些最常见用例。
复现并修复问题
开发者面临的最大挑战之一就是复现缺陷。用户经常以模糊的描述报告问题,比如"页面崩溃了"或"它不工作",这让人难以理解究竟哪里出了错。
会话回放通过准确地向您展示发生了什么,消除了这种猜测。您可以看到:
- 导致错误的确切用户操作
- 控制台日志和 JavaScript 错误
- 网络请求和响应
- 问题发生时的应用状态
- 设备信息和浏览器详情
这种全面的视角让开发者能够快速复现问题并高效修复,从而显著缩短调试时间。
跟踪应用性能
性能问题对用户来说可能尤为令人沮丧。会话回放工具通过提供以下内容,帮助您识别并解决这些问题:
- 每个会话的详细性能指标
- Core Web Vitals 测量值
- 加载缓慢的资源和瓶颈
- 不同设备和浏览器之间的性能差异
这些数据使您能够优化应用以获得更好的性能,并提升用户满意度。
缓解用户的挫败感
当用户无法在您的网站上达成目标时,常常会感到沮丧。会话回放通过以下方式帮助您识别这些痛点:
- 跟踪愤怒点击(rage clicks,即用户因沮丧而反复点击某个元素)
- 识别表单放弃以及造成问题的字段
- 观察表明困惑的导航模式
- 发现不直观的用户界面元素
通过解决这些问题,您可以创造更流畅的用户体验并减少客户的挫败感。
在客户需要支持时与他们互动
会话回放改变了客户支持团队协助用户的方式。客服人员不再仅仅依赖用户对问题的描述,而是可以:
- 观看用户遇到问题的那次会话
- 从用户的视角准确地看到发生了什么
- 基于视觉证据提供准确的解决方案
- 为开发团队创建详细的缺陷报告
这种视觉化的理解带来更快、更有效的客户支持,并提升客户满意度。
改进您的产品
会话回放为致力于改进产品的产品经理和用户体验设计师提供了无价的洞察:
- 看到用户实际如何使用功能(而非您以为他们如何使用)
- 识别可能需要更高可见性的未充分利用的功能
- 理解用户的工作流程并优化常见路径
- 通过真实的用户交互测试新功能
这些洞察带来数据驱动的产品决策,从而更好地满足用户的需求和期望。
会话回放对谁有用?
会话回放技术非常多用途,以至于它能为组织内的不同团队带来价值。这也是市场上有如此之多会话回放替代方案的原因之一。它们各自聚焦于不同的用户画像和用例。几乎没有哪一款工具能将它们全部囊括在一起。因此,在挑选会话回放工具时,务必牢记您的内部用户及其主要用例。
开发者
开发者将从既能捕获问题又能捕获其上下文的会话回放工具中受益。
调试问题是每位开发者日常工作的一部分。在某些情况下,这一过程要求他们联系用户并询问细节。否则,他们就得想办法根据所提供的缺陷报告自行复现问题。
如果您的开发团队收到的不是缺陷报告,而是确切的复现步骤,他们会作何感想?而如果在此基础上,您再附上一段用户操作的录制,并填入来自您技术栈的技术线索呢?那么他们现在就可以着手修复问题,仿佛用户正坐在他们身旁,向他们讲述自己做了什么以及随后发生了什么。
面向开发者的理想会话回放工具应当记录以下内容:
- 错误和控制台输出。有效地记录每一个 JavaScript 错误以及其他调试或信息日志。
- 应用特有的信息,比如状态变更(state mutations),便于回退并在回放期间的任意时刻检查其 Web 应用的状态。
- web vitals 指标(比如加载时间和首字节时间 time-to-first-byte)以及各种其他性能指标(比如 CPU 和内存利用率)。
- 网络活动,以便开发者能够跟踪应用向内部和外部 API 发起的调用并检查其负载(payloads)。
这样的工具有潜力显著缩短调试时间,并在修复问题时改善开发者的体验。
产品经理
产品经理通过观看真实用户与其产品的交互获得无价的洞察:
- 验证功能的使用情况和有效性
- 发现用户如何在产品中导航
- 基于真实的用户行为识别改进领域
- 就产品路线图的优先级做出数据驱动的决策
- 衡量新功能和变更的影响
借助各种指标和漏斗,产品经理可以了解一款应用中最具影响力的功能是什么,或者客户在哪里(以及为何)流失。会话回放工具捕获的数据通常可以转化为自定义可视化,进而帮助产品经理更快地迭代,因为他们现在处理的是定性数据,而非原始指标。可以这样理解:他们可以真切地感受到用户的痛点,并准确地看到用户如何与其产品的每一项功能交互。仅此一点,对产品经理而言就是一座洞察的金矿。
会话回放工具是任何分析技术栈的完美补充。通过结合定量和定性数据,产品经理能够获得更大的赋能,从而持续改进其产品,并最终为用户提供最佳体验。
设计师 & 用户体验研究员
对于设计和用户体验专业人士,会话回放提供了对用户如何与界面交互的直接观察:
- 在真实环境中观察用户与设计的真实交互
- 识别可用性问题和困惑之处
- 用真实的用户数据验证设计决策
- 发现意料之外的用户行为和模式
- 以被动、无偏的观察补充传统的用户体验研究
设计师从观察用户如何与其设计交互中获益良多,但开展焦点试验既费时又费力。此外,结果并非总是可靠,因为用户的行为有时会因被观察这一事实而受到影响;这被称为霍桑效应(Hawthorne Effect)。
另一方面,会话回放可以让设计师有机会观察其用户,并就不同的设计选择进行迭代,以理解其作品在生产环境中的呈现效果。毕竟,不同的设备、分辨率,乃至浏览器版本,都可能影响最终的显示,进而可能影响最终用户的体验。
客户支持
借助会话回放,客户支持团队可以提供更好、更高效的协助:
- 准确地看到客户在遇到问题期间经历了什么
- 基于视觉证据提供准确的解决方案
- 通过消除来回往复的问询缩短解决时间
- 为工程团队创建详细的缺陷报告
- 识别可能需要更好文档或界面改进的常见问题
这种视觉上下文帮助支持团队更快、更准确地解决问题。
会话回放如何运作?
让我们揭示一下捕获和回放会话录制时幕后发生的事情。某些部分可能比较技术性,但别担心;一切终将变得清晰明了。
会话回放内部究竟捕获了什么?
所收集的数据可能因会话回放工具而异。请记住,这些工具可能针对组织内不同的用户画像,因此处理某些用例而非其他用例。话虽如此,最好的工具应当能够捕获以下要素:
- 用户行为: 我们说的是点击、鼠标移动、滚动、犹豫等等。用户是否滚动略过了重要的消息?还是说他们或许正在愤怒地点击某些按钮?这些数据对于揭示关键的挫败感非常宝贵。
- DOM 变更: 当您访问一个网站时,您的浏览器会下载并随后组装各种元素,比如图片、文本和视频,然后才渲染每一个页面。文档对象模型(DOM)充当这些元素与您的浏览器之间的翻译器,使网页得以组装和渲染。会话回放工具检测到这些元素中任何一个被更新的时刻,并将这些变更(mutations)作为回放的一部分捕获下来。DOM 变更是会话录制的基本要素。它们是构成回放的帧。
- 开发者工具这些是浏览器提供的工具,帮助开发者在其本地测试环境中复现各种各样的问题。诸如网络请求和负载、JavaScript 错误、日志,以及 Web 应用的状态等等。某些回放工具确实会为每一个用户会话捕获这些技术数据,让开发者的调试变得轻而易举。
- Web vitals:监控您的 Web 应用的加载时间,不仅是页面,还包括其各种资源,可以为了解用户如何体验您的网站提供宝贵的洞察。此外,诸如内存和 CPU 利用率之类的指标可用于跟踪崩溃并修复应用中的卡顿。这使得会话回放工具成为您可观测性技术栈中的关键一环。
- 挫败感:愤怒点击(Click rages)、过度滚动或死点击都是会话回放平台能够检测到的用户挫败感的例子。识别它们是为您的用户提供更好的产品体验的第一步。
- 自定义事件: 这涵盖了您应用中可能需要随每一个录制会话一起记录的下游或上游事件。跟踪自定义事件意味着您可以将这些数据片段与您的回放同步,从而获得丰富得多的上下文。
- 元数据:关于某次特定录制的附加信息。诸如用户 ID(userIDs)、分群、浏览器版本、国家等等。元数据用于筛选回放并聚合数据。
- 资源(Assets):缓存某些资源,比如图片、字体或样式表,是任何会话回放平台的关键环节。想象一下,您为您的新网站录制了一次会话,几个月后,您决定为它换上焕然一新的外观。此时,如果资源没有被缓存,旧的录制就会直接损坏,因为它无法引用其先前的样式表和字体。这就是为什么资源缓存如此重要:它确保您的回放无论经过多长时间,都忠实于其原始形态。
这些工具不会录制视频(那会非常占用带宽),而是捕获事件数据,之后这些数据可以被重建成视觉化的回放。
数据处理
数据一旦被收集,便会经过若干处理步骤:
- 压缩以减小数据大小
- 移除敏感信息(基于您的隐私设置)
- 建立索引以便搜索
- 与其他指标和事件相关联
这一处理确保数据被高效存储,并能在需要时被快速检索。
回放重建
当您查看会话回放时,工具会重建用户的体验:
- 按用户所见的样子重建 DOM
- 按顺序回放用户交互
- 为光标移动制作动画
- 显示表单输入及其变化
- 在视觉回放旁边显示技术数据
这种重建提供了对用户所经历内容高度准确的再现,让您能够透过用户的眼睛看您的应用。
与其他工具的集成
大多数会话回放工具都可以与您技术栈中的其他系统集成:
- 像 Sentry 这样的错误跟踪工具
- 像 Google Analytics 这样的分析平台
- 像 Intercom 或 Zendesk 这样的客户支持系统
- 像 Salesforce 这样的 CRM 解决方案
这些集成通过将用户行为与其他业务指标和工作流程连接起来,提升了会话回放的价值。
会话回放中的数据隐私
大多数会话回放工具允许开发者控制哪些内容被记录、哪些内容被净化(sanitized)。被净化的元素不会被发送到服务器。事实上,它们绝不会离开您用户的浏览器。相反,它们要么被遮蔽(即文本被替换为星号、图片被替换为占位符),要么不被跟踪(数据被直接忽略)。
例如,假设您网站中的用户个人资料页面包含必须被净化的个人信息,比如地址和电话号码。开发团队可以向跟踪器(tracker)将这些字段标记为"已遮蔽"。这样,每当用户访问个人资料页面时,跟踪器就会通过将这些字段的内容替换为星号来净化它们。其结果是一个被妥善净化的回放,它仍然完整地捕获了用户旅程,而不会泄露任何个人可识别信息(PII)。
合规
如果您拥有 PII 数据,就总是有内部隐私政策需要遵循,以及外部法规需要遵守。
内部强制实施的政策可以涵盖从围绕基础设施的安全限制,一直到您可以安装的软件。在国际法规方面,最重要的有三项:
在外部合规方面,最重要的有三项:
- GDPR 在收集欧盟公民数据时适用。GDPR 还允许用户要求您从您的数据库中删除他们的数据。这当然也涵盖会话回放数据。
- HIPPA 这一项专门针对与医疗保健相关的数据。如果您正在收集您用户的此类信息,那么您很可能已经在遵守它了。
- CCPA 类似于 GDPR,但针对的是美国加利福尼亚州的居民。
如果您不属于医疗保健行业,并且您的网站可在全球范围访问,那么您很可能必须遵守 GDPR 和 CCPA。把会话回放工具加入其中,看起来似乎是又一道需要跨越的关卡。然而,这些工具通过净化和其他细粒度的控制解决了数据隐私方面的顾虑。开发者可以告诉跟踪器哪些数据要跟踪、哪些要忽略。这样一来,PII 就被安全地保留在您用户的浏览器中,不会被传输到服务器。
因此,审视并理解会话回放工具如何处理个人数据始终非常重要,这样您才能遵守现行的法规。
数据所有权与安全
即便数据被净化,它归谁所有?您又如何确保它被安全地处理和存储?这可能会让许多合规和安全团队头疼。
虽然大多数工具以 SaaS 应用的形式出现,但某些会话回放解决方案允许您在自己的场所自托管其整个平台。这意味着您拥有数据,数据也驻留在您的服务器上,从而遵守您的内部安全和隐私政策。
这是关键的一点。在决定选择哪个会话回放平台时,请确保您充分了解其中的细节。
会话回放定价
理解会话回放的定价模式有助于您做出明智的决策并避免意外的成本。让我们探讨常见的定价结构和考量因素。
常见的定价模式
会话回放工具通常采用以下定价模式之一:
按会话定价
您根据每月录制的会话数量付费。
- 优点: 易于理解,如果您的流量稳定则可预测。
- 缺点: 对于高流量网站可能变得昂贵,可能迫使您对会话进行抽样。
按用户定价
您根据月活跃用户(MAU)数量付费。
- 优点: 对于有回访访客的网站可能更具成本效益。
- 缺点: 可预测性较低,对于拥有众多独立访客的网站可能很昂贵。
按团队定价
您根据能够访问录制的团队成员数量付费。
- 优点: 对于小型团队可能具有成本效益,会话不限量。
- 缺点: 可能限制您组织内的访问,从而限制工具的价值。
自托管/开源
您自行托管解决方案并为自己的基础设施付费。
- 优点: 长期而言通常更具成本效益,对数据的控制更好。
- 缺点: 需要技术专长来搭建和维护。
需要考虑的隐性成本
除了基础定价之外,请留意这些潜在的额外成本:
- 存储时长: 更长的保留期通常成本更高
- 高级功能: 某些工具会对热力图或错误跟踪等功能收取额外费用
- 集成成本: 与您技术栈中的其他工具连接可能会产生费用
- 实施支持: 搭建期间的技术协助可能是一项额外成本
- 自定义数据保留: 特殊的合规要求可能会影响定价
在您的评估过程中,请务必询问这些潜在成本。
做出正确的选择
在基于定价评估会话回放工具时:
- 首先要清楚地了解您网站的流量模式
- 考虑有多少团队成员需要访问权限
- 评估总拥有成本,包括实施和维护
- 寻找透明、没有隐性费用的定价
- 考虑开源选项,以实现最大程度的成本控制
在会话回放工具中应关注什么
市场上有众多会话回放工具,为您的需求选择合适的一款可能颇具挑战。以下是您在评估过程中应当考虑的内容。
基本功能
核心回放功能
- 用户会话的高保真回放
- 对移动端和响应式设计的支持
- 灵活的回放选项(速度、跳过等)
- 会话筛选和搜索能力
技术数据
- 控制台日志和 JavaScript 错误
- 网络请求监控
- 性能指标
- 设备和浏览器信息
隐私控制
- 对敏感数据的输入遮蔽
- 可自定义的数据收集设置
- 符合 GDPR、CCPA 等
- 用户同意管理
集成能力
- 与您的技术栈兼容
- 用于自定义集成的 API 访问
- 与缺陷跟踪工具集成
- 与分析平台集成
实施的便捷性
无论您的技术栈如何,会话回放跟踪器的入门都不应需要超过几行代码。一旦基本设置完成,您就应当关注扩展其能力有多容易。工具提供的灵活性越高,它就越有可能契合您的用例。
理想的跟踪器应当以最少的代码即可轻松搭建,但同时它应当为您提供所需的全部选项,以便您按自己认为合适的方式自定义它。这包括捕获自定义事件、净化数据、向会话添加额外信息等等。所有这些都应当在尽量减小性能影响的前提下完成。
强大的开发者工具
要为您的前端开发者发挥会话回放的威力,重要的是提供一个与他们已经日常熟知和使用的环境高度相似的环境。事实上,每一款主流浏览器都自带某种形式的开发者工具,这是一套技术工具,帮助开发者在其日常工作中复现和调试各种各样的问题。
理想的会话回放工具应当能够捕获那些技术线索,并为开发者提供熟悉的调试体验。毕竟,会话回放尤为有效的领域之一就是缩短识别和修复缺陷所需的时间。
自托管
正如在数据隐私部分所讨论的,合规和安全政策可能不会给您留下选择的余地:是自行托管会话回放平台,还是将其作为云服务使用。
幸运的是,某些会话回放解决方案提供了自托管选项,让您能够在自己的服务器上安装并运营其整个平台。这带来了两大主要好处:
- 对数据的完全控制 ,这些数据由您的用户生成。会话回放数据直接进入您的服务器,在那里被处理和存储。
- 对内部政策和法规的合规以这种方式变得容易得多。不再有时间浪费在冗长的合规和安全检查上。
归根结底,自托管往往是企业级公司所选择的解决方案,因为它提供了对其数据的完全控制。如果数据所有权和安全是您公司重要的关切,那么在评估您的选项时,请务必优先考虑这一标准。
可扩展性
开发者乐于在其会话回放工具之上进行调整、增强并构建自定义功能。开放核心(open-core)或基于插件的架构使一款解决方案在设计上就具备可扩展性,并能面向内部用户需求面向未来。
如果您优先考虑可扩展性和自定义,那么在评估替代方案时,不妨考虑探索开源的会话回放解决方案。
搜索能力
每天捕获数百万次会话,会让找到相关的回放感觉像大海捞针。理想的会话回放工具应当提供一个强大且多用途的搜索引擎。这就要求能够按几乎任何被捕获的数据片段进行筛选,比如某个用户操作、某个特定的会话属性或某个技术事件。
这样的筛选能力对于选择合适的工具变得至关重要。
分析
认为凭借会话回放工具所捕获的全部数据就能创建各种可视化,以跟踪和理解 Web 应用的不同方面,这并不牵强。
例如,您可以创建一个仪表板来监控您网站的性能,包括加载时间、最慢的资源以及其他 web vitals 指标。您还可以在出现问题时接收警报,并使用会话回放来识别根本原因。这缩短了解决潜在关键问题的时间。
因此,在选择会话回放工具时,请优先考虑聚合数据并为对您重要的指标创建可视化的能力。
定价的可扩展性
正如前一部分所提到的,会话回放解决方案有两种主要的定价模式。在选择一种模式时,重要的是根据您的网站流量和用例考虑它的可扩展性。
如果您的网站每月产生数百万次会话,请考虑基于价值的定价模式。然而,如果您流量较低,最便宜的替代方案是使用提供基于用量定价的会话回放解决方案。更好的是,寻找您可以自行托管的开源替代方案以降低成本。
集成
与第三方工具集成的能力通常是强大会话回放解决方案的标志。事实上,会话回放只向您展示了故事的一面:您的前端。如果您在复现缺陷时需要完整的上下文,从而需要后端日志呢?这正是与您技术栈中其他工具集成可能非常有帮助的地方。
另一种有趣的集成类型是与工单系统集成,比如 JIRA。通过在审查某个特定回放时创建一张包含所有必要细节的工单,您可以显著改善您 QA 团队的工作流程。
因此,在挑选您的会话回放工具时,请务必关注可用的集成。
功能的广度
虽然确保您所选的解决方案具备您主要用例所需的正确功能集至关重要,但实际上建议留意该工具可能拥有的所有功能。
如前所述,会话回放工具可以使组织内多种角色和团队受益。尽管它们可能主要针对少数几个用例,但请考虑那种提供其他团队成员未来可能受益的互补功能的工具。
社区
最后,在决定选择哪个会话回放解决方案时,我们认为考虑它的社区很重要。一个活跃的社区——用户(在开源产品的情况下则是开发者)在其中积极参与并为平台做出贡献——是一款成功且健康产品的标志。
结论
对于专注于交付卓越数字体验的组织而言,会话回放工具已变得不可或缺。通过同时提供视觉上下文和技术数据,它们提供了其他分析工具根本无法匹敌的独特洞察。
无论您是试图修复难以捉摸的缺陷的开发者,是寻求改进用户流程的产品经理,还是帮助困惑客户的支持团队成员,会话回放都能改变您理解和优化 Web 应用的方式。
在为您的组织评估各种选项时,请记得在功能与隐私考量之间取得平衡,并选择一款契合您具体需求和资源的解决方案。