Amazon CloudWatch RUM 专业2021年〜
通过真实用户监控收集 Web 应用程序客户端性能和错误数据的服务
它能做什么
Amazon CloudWatch RUM(Real User Monitoring)是一项收集 Web 应用程序实际用户的客户端性能数据的服务。通过在应用程序中嵌入轻量级 JavaScript 代码片段,收集页面加载时间、JavaScript 错误、HTTP 错误、用户交互等数据。可以按浏览器、设备、地理位置等维度分析真实用户体验。
使用场景
用于监控 Web 应用程序的真实用户性能体验、识别特定浏览器或设备上的问题、追踪 JavaScript 错误和 HTTP 错误、分析页面加载性能的地理分布差异、验证部署后的性能影响等。
日常类比
可以将其比作在每位顾客身上安装的满意度传感器。不是在店内(服务器端)观察顾客,而是从顾客的视角记录体验——等待了多久、遇到了什么问题、在哪个环节放弃了。这些真实体验数据帮助改善服务质量。
什么是 CloudWatch RUM
CloudWatch RUM 是一项真实用户监控服务,收集实际用户在浏览器中体验到的性能数据。与服务器端监控不同,RUM 捕捉的是用户实际感受到的页面加载时间、交互延迟和错误。这些数据对于理解和改善用户体验至关重要。
收集的数据类型
RUM 收集多种类型的数据。性能数据包括页面加载时间、首次内容绘制(FCP)、最大内容绘制(LCP)等 Web Vitals 指标。错误数据包括 JavaScript 异常和 HTTP 错误。用户交互数据包括页面浏览和自定义事件。所有数据都附带浏览器、操作系统、设备类型和地理位置信息。
仪表板与分析
RUM 提供预构建的仪表板,可视化性能趋势、错误率和用户会话。可以按页面、浏览器、国家等维度筛选数据。还可以与 X-Ray 集成追踪从客户端到后端的完整请求链路,快速定位性能瓶颈。 关于前端性能监控的方法,也可以参考相关书籍(Amazon)。
开始使用
在 CloudWatch 控制台的 RUM 部分创建应用程序监控器。配置采样率(收集数据的用户比例)和要收集的数据类型。生成的 JavaScript 代码片段添加到 Web 应用程序的 HTML 中。数据会在几分钟内开始出现在 RUM 仪表板中。
注意事项
- 按收集的 RUM 事件数计费,高流量网站请通过采样率控制成本
- JavaScript 代码片段会略微增加页面大小,但经过优化影响极小
- RUM 数据保留期为 30 天,如需长期保存请配置导出到 S3