

# 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 合成：**建立 Canary 或指令碼常式，以模擬使用者與應用程式的互動。

   1.  定義關鍵應用程式工作流程和路徑。

   1.  使用 [CloudWatch Synthetics 指令碼](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Synthetics_Canaries.html)設計 Canary，以模擬這些路徑的使用者互動。

   1.  排定依指定間隔執行 Canary 並進行監控，確保一致的效能檢查。

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 Air ft 上的 。 Amazon 的真實使用者監控 CloudWatch ](https://www.youtube.com/watch?v=r6wFtozsiVE)

 **相關範例：**
+ [一個可觀測性研討會](https://catalog.workshops.aws/observability/en-US/intro)
+ [ Amazon CloudWatch RUM Web Client 的 Git 儲存庫 ](https://github.com/aws-observability/aws-rum-web)
+ [ 使用 Amazon CloudWatch Synthetics 來測量頁面載入時間 ](https://github.com/aws-samples/amazon-cloudwatch-synthetics-page-performance)