

# OPS04-BP03 实施用户体验遥测
<a name="ops_observability_customer_telemetry"></a>

 深入了解客户体验以及与应用程序的交互至关重要。真实用户监控（RUM）和综合事务是实现此目的的强大工具。RUM 提供有关真实用户交互的数据，从未经过滤的视角反映用户满意度，而综合事务可模拟用户交互，有助于在潜在问题影响真实用户之前就发现它们。 

 **期望的结果：** 全面了解客户体验，主动检测问题，优化用户互动，以提供无缝的数字体验。 

 **常见反模式：** 
+  应用程序没有真实用户监控（RUM）功能 
  +  问题检测被延误：如果没有 RUM，可能要等到用户抱怨时，您才会意识到性能瓶颈或问题。这种被动应对的方法可能会导致客户不满。 
  +  缺乏对用户体验的了解：不使用 RUM 意味着您无法掌握揭示真实用户如何与应用程序交互的关键数据，从而限制您优化用户体验的能力。 
+  应用程序缺乏综合事务 
  +  错过边缘案例：综合事务有助于您测试普通用户可能不经常使用、但对某些业务职能至关重要的路径和功能。没有它们，这些路径可能会出现故障并被忽视。 
  +  在应用程序未使用时检查问题：定期的综合测试可以模拟真实用户未积极与应用程序交互时的情况，确保系统始终正常运行。 

 **建立此最佳实践的好处：** 
+  主动检测问题：在潜在问题影响真实用户之前，识别并解决这些问题。 
+  优化用户体验：来自 RUM 的持续反馈有助于完善和增强整体用户体验。 
+  获得有关设备和浏览器性能的见解：了解您的应用程序在各种设备和浏览器上的表现，从而实现进一步优化。 
+  经过验证的业务工作流程：定期的综合事务可确保核心功能和关键路径始终可以使用且高效。 
+  增强应用程序性能：利用从真实用户数据中收集的见解，提高应用程序的响应能力和可靠性。 

 **未建立这种最佳实践的情况下暴露的风险等级：** 高 

## 实施指导
<a name="implementation-guidance"></a>

 为了利用 RUM 和综合事务进行用户活动遥测，AWS 提供多项服务，例如 [Amazon CloudWatch RUM](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 和 [Amazon CloudWatch Synthetics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)。指标、日志和跟踪，再加上用户活动数据，可让您全面了解应用程序的运行状态和用户体验。 

### 实施步骤
<a name="implementation-steps"></a>

1.  **部署 Amazon CloudWatch RUM：** 将您的应用程序与 CloudWatch RUM 集成，收集、分析和呈现真实的用户数据。 

   1.  使用 [CloudWatch RUM JavaScript 库](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html) 将 RUM 与您的应用程序集成。 

   1.  设置控制面板以可视化形式呈现和监控真实的用户数据。 

1.  **配置 CloudWatch Synthetics：** 创建金丝雀或脚本化例程，模拟用户与应用程序的交互。 

   1.  定义关键应用程序工作流程和路径。 

   1.  使用 [CloudWatch Synthetics 脚本](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html) 设计金丝雀，模拟用户在这些路径上的交互。 

   1.  安排和监控金丝雀按指定的间隔运行，确保一致的性能检查。 

1.  **分析数据并据此采取行动：** 利用来自 RUM 和综合事务的数据来获取见解，并在检测到异常时采取纠正措施。使用 CloudWatch 控制面板和警报及时了解情况。 

 **实施计划的工作量级别：** 中 

## 资源
<a name="resources"></a>

 **相关最佳实践：** 
+  [OPS04-BP01 识别关键绩效指标](ops_observability_identify_kpis.md) 
+  [OPS04-BP02 实施应用程序遥测](ops_observability_application_telemetry.md) 
+  [OPS04-BP04 实施依赖项遥测](ops_observability_dependency_telemetry.md) 
+  [OPS04-BP05 实施分布式跟踪](ops_observability_dist_trace.md) 

 **相关文档：** 
+ [ Amazon CloudWatch RUM 指南 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-RUM.html)
+ [ Amazon CloudWatch Synthetics 指南 ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)

 **相关视频：** 
+ [ 使用 Amazon CloudWatch RUM 通过最终用户洞察优化应用程序 ](https://www.youtube.com/watch?v=NMaeujY9A9Y)
+ [AWS on Air ft.Real-User Monitoring for Amazon CloudWatch ](https://www.youtube.com/watch?v=r6wFtozsiVE)

 **相关示例：** 
+ [ 可观测性研讨会 ](https://catalog.workshops.aws/observability/en-US/intro)
+ [ 适用于 Amazon CloudWatch RUM Web 客户端的 Git 存储库 ](https://github.com/aws-observability/aws-rum-web)
+ [ 使用 Amazon CloudWatch Synthetics 来测量页面加载时间 ](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance)