

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 監控 CloudFront 和 MediaTailor 整合並進行疑難排解
<a name="monitoring-and-troubleshooting"></a>

AWS Elemental MediaTailor 與 Amazon CloudFront 的整合需要持續監控和故障診斷，才能維持最佳效能。實作 CloudFront 和 MediaTailor 整合之後，請監控效能並準備對任何問題進行疑難排解。內容交付網路 (CDN) 提供工具，協助您了解分發如何執行並識別潛在問題。

## 為您的整合設定監控
<a name="cf-monitoring-setup"></a>

實作這些監控策略來追蹤 CloudFront 和 MediaTailor 整合的效能：

**設定 CloudFront 和 MediaTailor 整合的監控**

1. 啟用 CloudFront 標準記錄：

   1. 在 CloudFront 主控台中，選取您的分佈。

   1. 選擇 **Logs (日誌)** 索引標籤。

   1. 在**標準日誌**下，選擇**編輯**。

   1. 選取**開啟**並設定日誌儲存的 Amazon S3 儲存貯體。

   1. 選擇**儲存變更**。

1. 設定 CloudFront 即時日誌：

   1. 在 CloudFront 主控台中，選取您的分佈。

   1. 選擇 **Logs (日誌)** 索引標籤。

   1. 在**即時日誌**下，選擇**編輯**。

   1. 選取**開啟**並設定 Amazon Kinesis Data Streams 或 Amazon Data Firehose 交付串流。

   1. 在日誌組態中包含這些欄位：
      + `time-to-first-byte` - 回應時間
      + `sc-status` - HTTP 狀態碼
      + `c-ip` - 檢視器 IP 地址
      + `cs-uri-stem` - 請求 URI 路徑
      + `cs-user-agent` - 使用者代理程式
      + `x-edge-result-type` - 結果類型 （命中、遺漏、錯誤）

   1. 選擇**儲存變更**。

1. 建立 CloudWatch 儀表板：

   1. 在 CloudWatch 主控台中，選擇**儀表板**。

   1. 選擇 **Create dashboard (建立儀表板)**。

   1. 為這些 CloudFront 指標新增小工具：
      + 要求
      + BytesDownloaded
      + 4xxErrorRate
      + 5xxErrorRate
      + TotalErrorRate
      + CacheHitRate

1. 設定 CloudWatch 警示：

   1. 在 CloudWatch 主控台中，選擇**警示**。

   1. 選擇 **Create alarm** (建立警示)。

   1. 為這些條件建立警示：
      + 5xxErrorRate > 1% 持續 5 分鐘
      + 4xxErrorRate 大於 5%，持續 5 分鐘
      + 30 分鐘內 CacheHitRate 低於 80%

## 監控 MQAR 效能
<a name="mqar-monitoring"></a>

使用 MQAR 時，監控可協助您了解 CloudFront 如何在原始伺服器之間選取，以及品質分數是否符合預期。即時日誌會在這些決策發生時顯示。

**監控 MQAR 效能**

1. 為您的 CloudFront 分佈啟用即時日誌。

1. 在日誌組態中包含這些欄位：
   + `r-host` - 所選原始伺服器的主機名稱
   + `sr-reason` - 選擇原始伺服器的原因
   + `x-edge-mqcs` - 媒體品質可信度分數

1. 在 Amazon Kinesis Data Streams 或 Amazon Data Firehose 中設定日誌目的地。

1. 根據這些指標建立儀表板或提醒，以監控品質分數和原始伺服器選擇決策。

**Example 用於 MQAR 監控的範例 CloudWatch 儀表板**  
使用以下指標建立 CloudWatch 儀表板：  
+ 依區域的原始伺服器選擇計數
+ 一段時間的平均品質分數
+ 容錯移轉事件
+ 依原始伺服器分類的 4xx 和 5xx 錯誤率

如需設定即時日誌的詳細資訊，請參閱 CloudFront 開發人員指南中的[即時日誌](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/real-time-logs.html)。

## 排解常見問題
<a name="troubleshooting-common-issues"></a>

即使仔細規劃CloudFront 和 MediaTailor 整合也會發生問題。了解常見問題和解決方案可協助您快速解決問題，並將瀏覽者的影響降至最低。

如果您遇到 CloudFront 和 MediaTailor 整合的問題，請檢查這些常見問題和解決方案：

資訊清單快取問題  
**徵狀：**過時資訊清單或廣告未更新  
**解決方案：**確認您針對多變量播放清單、媒體播放清單和 MPD 路徑使用`CachingDisabled`快取政策。檢查您的組態是否正確轉送查詢參數。

CORS 錯誤  
**徵狀：**瀏覽器主控台在存取內容時顯示 CORS 錯誤  
**解決方案：**使用適當的 CORS 標頭設定回應標頭政策，並將其與您的快取行為建立關聯。

MQAR 無法運作  
**徵狀：**原始伺服器選取會忽略品質分數  
**解決方案：**檢查您是否已在原始伺服器群組設定中啟用媒體品質分數選項。確認您未使用 Lambda@Edge 面向原始伺服器觸發條件。

廣告插入失敗  
**徵狀：**廣告未正確插入  
**解決方案：**驗證 MediaTailor 組態指向內容區段字首的 CloudFront 分佈。檢查您的設定是否轉送所有必要的標頭。

對於更複雜的問題，您可以使用下列疑難排解方法：

1. 檢查 CloudFront 分佈日誌是否有錯誤模式

1. 使用瀏覽器開發人員工具來檢查網路請求

1. 與透過 CloudFront 交付的內容直接比較 MediaTailor 的資訊清單內容

1. 使用支援詳細記錄的簡單播放器進行測試

如需更多故障診斷協助，請參閱 MediaTailor 使用者指南中的[故障診斷](https://docs.aws.amazon.com//mediatailor/latest/ug/troubleshooting.html)一節。

## 對工作流程進行故障診斷
<a name="troubleshooting-workflow"></a>

遵循此系統方法，針對 CloudFront 和 MediaTailor 整合的問題進行疑難排解：

**疑難排解 CloudFront 和 MediaTailor 整合問題**

1. 識別特定問題：

   1. 判斷問題是否會影響所有瀏覽者或僅影響部分瀏覽者

   1. 識別受影響的內容類型 （資訊清單、區段或兩者）

   1. 請注意任何錯誤訊息或症狀

1. 檢查 CloudFront 日誌：

   1. 尋找錯誤狀態碼 (4xx 或 5xx)

   1. 檢查快取命中/遺失模式

   1. 驗證請求是否路由到正確的原始伺服器

1. 驗證組態：

   1. 檢查快取行為的路徑模式是否正確

   1. 確認快取政策已正確套用

   1. 確認原始伺服器請求政策正在轉送必要的標頭

1. 測試直接存取：

   1. 嘗試直接從 MediaTailor 存取內容 （繞過 CloudFront)

   1. 比較直接存取和 CloudFront 存取之間的回應

1. 實作解決方案：

   1. 根據您的問題清單套用適當的修正

   1. 測試以確認問題已解決

   1. 記錄問題和解決方案以供日後參考

## 後續步驟
<a name="monitoring-next-steps"></a>

設定 CloudFront 和 MediaTailor 整合的監控和疑難排解之後，請考慮這些後續步驟：
+ 使用 實作自動化部署 AWS CloudFormation （請參閱 [使用 自動化 MediaTailor 和 CDN CloudFormation](automating-cdn-integration.md))
+ 針對常見的操作案例和疑難排解程序建立 Runbook
+ 設定常見問題的自動修復