软件可观测性需从后端转向前端。传统关注技术错误,而新方法应以用户为中心,衡量性能对用户体验和参与度的影响,解决用户旅程中的流失问题,提升产品价值。
译自:Observability Is Stuck in the Past. Your Users Aren’t
作者:Andrew Tunall
软件可观测性这一概念在数字化转型的顶峰时期应运而生。当时,后端服务正在扩展并转向微服务,系统变得越来越分布式,而关键挑战是在庞大的基础设施中追踪延迟、中断和错误的根本原因。如果一个 API 调用失败或一项服务运行缓慢,工程师们希望知道原因。
这种思维模式导致了一场遥测军备竞赛。收集一切、存储一切、查询一切,并希望通过追踪、日志和指标找到答案。
然而,尽管这种框架对许多后端系统仍然适用,但它与今天的现实根本不符:用户不与你的基础设施交互;他们与你的产品交互。
在移动和网络端,性能问题不仅仅关乎 CPU 周期或内存泄漏。它们关乎人类感知、决策和参与度。这是一个更复杂、更不确定的世界。而传统可观测性根本不是为此而构建的。
性能对人类产生影响
在前端世界中,用户脱离可能早在错误抛出或崩溃被检测到之前就发生了。当延迟增加,哪怕是适度的增加,用户也会觉得你的应用坏了。他们会跳出。他们会停止交易。他们会放弃流程。
以一个航空公司应用为例:如果它加载不够快,旅客可能会放弃并致电你的呼叫中心,从而增加运营成本并降低客户体验。或者他们会寻找另一家航空公司。或者,以一个社交媒体应用为例:如果时间线无法即时渲染,用户就会退出,转而使用下一个实时应用,你将失去参与度、收入和广告曝光。
然而,产品经理和设计师往往缺乏对加载时间或微妙的 UX 小故障如何影响参与度的可见性。结果呢?盲点。一个性能退化滑入生产环境。通知到达过慢。布局偏移导致沮丧。而所有人看到的唯一信号是留存率下降,他们无法解释(更糟的是,根本没有任何信号)。
二元陷阱:为什么前端团队仍处于黑暗中
大多数前端团队尚未建立一种以细致入微的方式衡量和迭代性能的文化。他们通常将性能视为二元问题:要么“正常”,要么“彻底崩溃”。
但用户体验并非如此。性能存在于一个连续体上,大多数用户脱离发生在灰色地带,即当事情慢到令人沮丧,但又没有坏到监控工具能捕捉到的程度时。
这是当今可观测性实践中的根本缺陷:公司构建的工具可以告诉他们请求是否失败,但不能告诉他们用户是否在预订流程中途放弃。他们可以测量追踪持续时间,但不能测量 UI 响应速度是否低于用户愿意停留的阈值。
是时候对可观测性进行新的定义了,一个侧重于性能如何影响最终用户体验和行为的定义。
以用户为中心的方法消除猜测
真正的以用户为中心的可观测性提出简单的问题,例如:“你的团队能否自信地衡量加载时间和延迟如何影响关键流程中真实用户的参与度?”以及“你是否知道如何跟踪贵公司网站和移动应用上最具关键性、影响收入的接触点的技术性能?”
对于大多数组织来说,答案是否定的。这是一个巨大的改进机会。
通过植入标准化的遥测、用户流程和行为信号,团队可以开始将性能与实际结果关联起来:用户是否完成了我们预期的操作?他们是否流失了?发布后他们的行为是否有所不同?
例如,当将新功能发布到生产环境时,团队应该能够看到用户是否与它互动,它是否可靠运行,如果不是,原因何在。是渲染延迟?是混乱的 UI?是加载时间退化?这并非锦上添花;它是提供用户真正想使用的产品的关键。
围绕用户旅程重构可观测性
考虑一下会话时间线的概念。它很有用,但这只是冰山一角。我们需要的是用户旅程——将关键步骤、入口点、流失点和摩擦点串联起来的地图。这些旅程让团队能够可视化性能、bug 或设计不匹配如何导致参与度下降。
例如,我们曾看到关键流失点出现在命名约定或措辞选择这样的小细节上。当这些细节与延迟结合时,它们会加剧为严重的摩擦,然而传统可观测性工具很少揭示这些细微差别。
我们不应该问“后端是否返回了 200 状态?”,而应该问“用户是否实际完成了操作?”如果否,那么“什么信号可以解释原因?”
理解性能如何影响参与度
我们必须远远超越产品分析、崩溃报告器和日志工具所能提供的一切。我们必须解决这个根本性但经常被忽视的问题:赋予前端和产品团队理解性能如何影响用户参与度的能力。
是的,我们必须关心崩溃和应用无响应 (ANR) 问题。但那些只是冰山一角。我们必须理解那些悄然侵蚀信任和使用的长尾问题:产生脉冲式加载屏幕的重试、让用户沮丧的细微布局偏移,或者直到增长停滞才被发现的性能退化。
产品分析工具可能会向产品和营销团队展示热图和愤怒点击,但它们不会告诉工程师为什么。过于简化的解决方案可能显示错误率,但不会显示对用户留存的影响。我们需要弥合这一差距。
未来:衡量真正重要的东西
我们相信工程团队不应该在站会期间问“我们的 ANR 率是多少?”他们应该问“自上次发布以来,我们的任何关键流程是否显示用户行为退化?”
这就是转变。在 Embrace,我们正在构建支持这一转变的工具。通过将遥测与参与度信号连接起来,串联用户旅程,并使可靠性可见(而不仅仅是可追踪),我们希望帮助团队更快地做出更明智的决策。