什么是 Web 事务监控?

什么是 Web 事务监控?简要回答:Web 事务监控是一种合成监控类型,它使用脚本化浏览器测试来模拟和验证多步骤用户工作流程,例如登录或结账。它从端到端主动检查应用程序的功能和性能,确保关键用户旅程在影响客户之前能够正确运行。

Web 事务监控是一种合成监控形式,它持续测试网站或 Web 应用程序中的关键多步骤用户工作流程,以验证用户是否能够成功完成关键操作。与简单的可用性或 API 检查不同,它会模拟真实用户的操作路径——例如登录、提交表单或完成结账——以从头到尾验证功能正确性和性能表现。

在 Dotcom-Monitor 中,此功能通过 UserView 平台实现,该平台在全球 30 多个监控位置使用真实桌面浏览器执行这些脚本化交互。通过验证完整的端到端用户旅程,包括前端渲染、JavaScript 执行和动态内容,UserView 能够发现其他监控类型无法检测到的隐性故障。事务中的每一步都通过明确的验证规则进行确认,确保仅在真正影响用户的问题出现时才触发告警。

为什么事务中断或变慢至关重要?

当关键用户工作流程失败时,其影响远远超出简单的错误提示。这些故障会直接影响收入、用户信任以及合同义务,使主动监控成为一项必要的业务实践,而不仅仅是技术措施。

最直接的影响体现在收入方面。一个损坏的结账表单不仅会让用户感到沮丧,还会导致购物车被放弃和销售损失。对于 B2B SaaS 公司而言,无法使用的登录或损坏的“申请演示”表单意味着潜在客户流失以及客户转向竞争对手。这些故障尤其隐蔽,因为它们通常不会触发任何服务器端错误——页面可以加载,后端运行正常,但用户却无法完成任务。

除了即时收入损失外,事务故障还会削弱用户信任和品牌声誉。用户期望获得无缝的数字体验,当他们遇到错误、性能缓慢或功能失效时,会对品牌产生负面印象。研究持续表明,经历过一次糟糕互动的用户再次访问的可能性显著降低,在竞争激烈的市场中,他们往往会直接转向替代方案。

对于许多服务提供商而言,性能和可用性还通过服务级别协议(SLA)进行合同保证。未被发现的事务故障可能导致违反 SLA,从而引发经济处罚、客户关系紧张以及专业声誉受损。主动事务监控能够提供必要的证据,既可防止违约,也可证明合规。

根据 Gartner® 的观点,数字体验监控(DEM)工具对于理解“用户体验的可用性、性能和质量”至关重要。[1] Web 事务监控是 DEM 的核心支柱,因为它直接衡量定义用户体验的用户旅程是否成功。

Web 事务监控是如何工作的?

在 Dotcom-Monitor 中,Web 事务监控通过 UserView 平台 实现,该平台使用真实浏览器引擎按计划间隔执行脚本化用户交互。与仅验证服务器响应的基于协议的检查不同,UserView 会运行完整的浏览器会话,像真实用户一样执行 JavaScript、渲染 DOM、处理 Cookie,并按照生产环境浏览器的方式进行重定向。此过程为应用程序功能和性能提供了深度可视性。

脚本编写与执行

事务脚本通过 EveryStep Web Recorder 创建,该工具允许团队以可视化方式录制真实浏览器交互,例如点击、输入和导航。这些录制会自动转换为可编辑的分步脚本,并可通过条件逻辑、等待机制和特定验证规则进行增强。这种方法结合了无代码录制的速度与编程脚本的可靠性。

创建脚本后,UserView 会根据设定的计划,从全球 30 多个监控位置执行该脚本。每次执行都遵循确定性的流程:

  1. 浏览器初始化:启动一个真实的桌面浏览器实例,以完全支持 JavaScript 执行和客户端渲染。
  2. 导航与交互:浏览器访问目标 URL 并执行脚本化操作,例如登录、提交表单或与动态元素交互。
  3. 异步处理:平台会自动等待诸如 AJAX 调用和客户端渲染等后台活动完成后再继续下一步,这对于监控现代单页应用(SPA)至关重要。
  4. 步骤级验证:在每一步都会检查明确的验证规则。只有在确认预期的 UI 状态(例如出现特定文本“订单已确认”或关键元素可见)时,该步骤才算通过。这确保事务在功能上真正成功,而不仅仅是页面返回了 HTTP 200 状态。

诊断、告警与报告

有效的监控不仅仅是检测故障——更重要的是检测正确的故障,并提供可操作的数据以便快速解决。当事务步骤失败时,UserView 会自动捕获一整套诊断证据,以消除猜测并缩短平均解决时间(MTTR)。

这些证据包括:

  • 完整的视频录制,记录整个事务执行过程。
  • 截图,在故障发生瞬间捕获。
  • 详细的 瀑布图,展示资源加载、网络时序和渲染行为,并与视频播放同步。

只有在功能验证失败或性能阈值被突破时才会触发告警。为防止因瞬时网络问题导致的告警疲劳,可以配置为在发送告警之前需要多个监控位置确认故障。结合智能告警和丰富的可视化诊断,监控从简单的检测工具转变为工程师可以立即采取行动的强大诊断系统。

它与其他监控类型相比如何?

现代监控策略依赖多种工具,每种工具都观察应用程序栈的不同层面。了解 Web 事务监控在其中的位置,对于构建有效覆盖至关重要。虽然页面监控、API 监控和真实用户监控(RUM)等工具能够提供有价值的洞察,但它们无法验证完整用户旅程的成功。

以下是 UserView(Dotcom-Monitor 的 Web 事务监控平台)与其他常见监控类型的对比:

监控类型 主要关注点 真实浏览器 验证内容 局限性
页面监控 (HTTP/S) 基础可用性 服务器响应时间和 HTTP 状态码。 无法执行 JavaScript、与页面元素交互或验证用户操作。
API 监控 后端端点健康 API 延迟和响应数据正确性。 无法查看 UI、客户端渲染或浏览器特定故障。
BrowserView(Web 性能) 前端页面性能 详细的页面加载和渲染指标(例如 Core Web Vitals)。 衡量单个页面加载性能,但不验证多步骤工作流程。
UserView(Web 事务) 端到端用户工作流程 完整用户旅程的功能成功和性能表现。 需要初始脚本编写,并随着应用演进进行持续维护。
真实用户监控(RUM) 真实用户行为 是(用户的) 真实用户经历的性能数据和错误。 属于被动方式(需要用户流量),无法主动检测问题,并可能遗漏低流量页面的问题。

简而言之,虽然其他监控类型可以告诉您服务器是否在线或单个页面是否加载缓慢,但只有 Web 事务监控能够主动确认用户是否可以成功登录、将商品加入购物车并完成结账流程。它通过验证直接影响业务成果的关键用户体验层,与其他工具形成互补。

Web 事务监控的 4 大典型使用场景

当应用于用户依赖以访问服务、提交数据和完成交易的真实生产工作流程时,Web 事务监控的价值最大。这些用户旅程往往以细微方式失败,而基础可用性或 API 监控无法检测。以下是经过实践验证的典型使用场景,在这些场景中事务监控提供关键可视性。

验证登录、结账和表单提交

诸如用户身份验证和结账等与收入直接相关的工作流程极易发生隐性故障。例如,前端部署可能引入 JavaScript 错误,导致“下单”按钮无法激活,尽管页面本身可以正确加载且所有后端 API 状态正常。模拟完整结账路径(从添加商品到购物车到验证确认消息)的 UserView 事务脚本将立即检测到此类故障。同样,它还可以捕获损坏的潜在客户生成或支持表单,在提交时无限等待,从而防止隐性收入损失和客户挫败感。

确保 SPA 和动态应用的功能正常

现代单页应用(SPA)依赖客户端路由和动态 DOM 更新,使其难以通过传统工具监控。某个仪表板应用可能成功加载,但损坏的客户端路由可能阻止用户在不同视图之间导航,而不会触发页面刷新或 HTTP 错误信号。由于 UserView 在真实浏览器中执行测试,它能够验证这些动态 UI 状态变化是否按预期发生,从而确认应用真正可用,而不仅仅是成功加载。

在部署后验证应用健康状况

将 Web 事务监控集成到 CI/CD 流水线中,可为用户界面提供强大的自动化回归测试。在新版本部署前后,UserView 可以持续对关键工作流程执行脚本。如果发布版本引入前端回归(例如更改按钮 ID 或破坏关键脚本),事务将失败,并且构建可以被自动标记或回滚。这为后端健康检查无法提供的关键保障层增加信心,防止关键漏洞进入生产环境。

识别区域性能和可用性问题

应用程序的可靠性本质上具有地理差异。结账流程可能在北美成功,但由于 CDN 配置错误、DNS 解析问题或网络延迟,在亚洲间歇性失败。通过从全球 30 多个监控位置运行相同事务,UserView 使团队能够按区域比较性能和成功率,从而隔离并排查否则只有在客户投诉时才会显现的地理问题。

Web 事务监控解决的 3 个最常见挑战

即使经过最佳规划,复杂的 Web 应用程序仍然会带来需要复杂解决方案的监控挑战。了解这些挑战以及如何克服它们,是区分噪音监控与真正有价值监控的关键。

脚本脆弱性

在敏捷和 CI/CD 环境中,频繁的 UI 变化可能会破坏依赖自动生成 CSS 类或动态元素 ID 等脆弱选择器的监控脚本。这是团队放弃事务监控的最常见原因之一。EveryStep Web Recorder 通过允许团队使用更稳健的选择器(例如可见文本内容或数据属性)来缓解这一问题,这些选择器在部署之间不易发生变化。当脚本确实出现问题时,所见即所得界面可以快速重新录制受影响的步骤,而无需从头重写整个脚本。

告警疲劳

被短暂、非关键问题的通知淹没是一种真实的运营风险。当团队收到过多误报时,他们可能会开始忽略告警——这意味着他们可能会错过真正影响用户的故障。UserView 通过允许配置仅在多次连续失败或多个地理位置确认后才触发告警来解决这一问题。您还可以设置性能阈值,以避免轻微波动产生噪音,从而确保值班工程师只会收到需要立即关注的持续性问题通知。

动态内容覆盖有限

许多监控工具难以验证通过 React、Angular 或 Vue 等 JavaScript 框架异步加载的内容。页面可能显示为“已加载”,但关键 UI 元素仍在后台渲染。UserView 的智能等待机制会自动处理动态元素和 AJAX 调用,确保脚本仅在页面完全渲染并可交互后才继续执行。这对于准确监控现代重 JavaScript 应用至关重要,因为初始 HTML 响应往往几乎不包含有意义的内容。

如何选择合适的 Web 事务监控工具?

选择合适的 Web 事务监控工具对于确保全面覆盖和可操作洞察至关重要。在评估不同解决方案时,请考虑以下关键能力:

功能 重要性 需要关注
脚本灵活性 既提供无代码录制以提高速度,又支持编辑脚本以实现复杂逻辑的工具。能够处理动态内容、SPA 和 iframe 至关重要。
全球覆盖 广泛的全球监控位置网络,以准确模拟不同地理区域的用户体验并识别区域性能问题。
诊断质量 不仅仅是简单的通过/失败状态。应提供视频录制、瀑布图和详细错误日志,以加快根因分析。
告警智能化 可配置告警以防止告警疲劳,包括多位置故障确认和性能阈值告警。
集成能力 与现有通知渠道(如 Slack、PagerDuty 或 Teams)以及 CI/CD 工具的无缝集成。

除了这些基本功能外,还应考虑该工具与现有工作流程的契合程度。对于 DevOps 和 SRE 团队而言,将事务测试作为 CI/CD 流水线的一部分触发,是一项显著优势,因为它将监控转变为每次部署的自动化质量关卡。对于拥有防火墙后内部应用的组织而言,提供私有监控代理对于将合成监控扩展至内网环境至关重要。

Dotcom-Monitor 的 UserView 平台在所有这些方面表现出色。它结合了易于使用的 EveryStep Web Recorder、全球 30 多个监控位置网络、一流的诊断功能(包括视频捕获和瀑布分析),以及对公共和私有监控代理的支持。这使其成为现代Web 应用程序监控的全面解决方案,无论您的应用是面向公众还是内部使用。

如何设置 Web 事务监控?

在 Dotcom-Monitor 中设置 Web 事务监控是一个简单流程,旨在让您在几分钟内从零开始进入监控状态。以下步骤概述了使用 UserView 平台和 EveryStep Web Recorder 的典型工作流程。

  1. 选择平台并创建脚本:首先打开 EveryStep Web Recorder。访问您的 Web 应用程序,并像真实用户一样执行您希望监控的操作序列。EveryStep 会记录每一次点击、按键和导航,并将其转换为可编辑脚本。
  2. 优化并添加验证:录制完成后,您可以优化脚本。添加验证步骤以确保应用程序行为正确,例如使用“关键字断言”验证确认文本是否出现在页面上。您还可以添加等待、条件逻辑和其他高级功能以处理动态内容。
  3. 配置监控参数:在 UserView 中定义事务的监控方式。这包括选择监控位置(来自 30 多个全球检查点)、设置监控频率,以及配置超时和连接行为。
  4. 设置告警:最后,配置告警规则。您可以基于功能故障、性能阈值违规或多位置确认来触发告警。告警可以发送至多种通知渠道,以确保相关团队成员能够立即获知。

总结

Dotcom-Monitor 的 Web 事务监控通过真实浏览器提供深入可视性,确保用户能够成功完成关键操作——在全球范围内、可靠且可扩展地运行。通过结合 UserView 的真实浏览器执行、EveryStep Web Recorder,以及包括视频捕获和瀑布分析在内的丰富诊断工具,它能够发现传统监控无法检测到的故障。对于任何依赖数字工作流程的组织而言,这一能力是保障性能、可靠性和用户体验的基础支柱。

常见问题

什么是 Web 事务?
Web 事务是在 Web 浏览器中执行的一系列多步骤用户交互,用于完成特定任务。例如登录、提交表单、浏览仪表板或完成在线结账。在 Web 事务监控中,这些交互会在真实浏览器中以合成方式执行,以验证功能是否成功以及性能表现。
Web 事务监控与 API 监控有何不同?
API 监控通过检查响应代码、响应内容和延迟来验证后端端点。相比之下,Web 事务监控在真实浏览器中执行操作,以验证用户界面行为、页面渲染以及客户端逻辑。它确认用户能够完成完整的工作流程,而不仅仅是服务器是否在响应。
哪些类型的应用程序需要 Web 事务监控?
Web 事务监控对于需要登录的门户网站、单页应用程序(SPA)、结账和支付流程、多步骤表单,以及任何依赖大量 JavaScript 且用户交互成功至关重要的应用程序尤为重要。
Dotcom-Monitor 如何处理 CAPTCHA?
虽然自动化工具无法解决 CAPTCHA 验证挑战,但 UserView 可以监控使用 CAPTCHA 的页面。推荐的方法是将 Dotcom-Monitor 的特定 IP 地址配置为绕过 CAPTCHA,或使用禁用 CAPTCHA 的专用测试环境。您可以在我们的知识库中找到监控代理 IP 地址的列表。
Web 事务监控的示例是什么?
一个电子商务网站将其结账流程作为单一事务进行监控:加载主页、登录、将商品加入购物车、完成结账流程,并验证订单确认页面。如果任何步骤失败、变慢或渲染异常,UserView 会记录故障,捕获视频和瀑布图等诊断证据,并触发警报,使团队能够在客户受到影响之前做出响应。
Matthew Schmitz
About the Author
Matthew Schmitz
Dotcom-Monitor 负载与性能测试总监

作为 Dotcom-Monitor 的负载与性能测试总监,Matt 目前领导着一支由优秀工程师和开发人员组成的团队,共同为最严苛的企业需求打造先进的负载与性能测试解决方案。

Latest Web Performance Articles​

立即免费启动Dotcom-Monitor

无需信用卡