

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

# 從 MediaTailor 對播放進行故障診斷
<a name="playback-errors"></a>

此小節提供有關測試播放器軟體時和播放器請求的一般處理期間可能會收到的 HTTP 錯誤代碼的資訊。

**注意**  
在 `PutPlaybackConfiguration`和 等組態操作期間，您可能也會收到來自 AWS Elemental MediaTailor API 的錯誤`GetPlaybackConfiguration`。如需這些錯誤類型的資訊，請參閱 [AWS Elemental MediaTailor API 參考](https://docs.aws.amazon.com/mediatailor/latest/apireference/Welcome.html)。

當您的播放器直接或透過 CDN 傳送請求時 AWS Elemental MediaTailor，MediaTailor 會以狀態碼回應。如果 MediaTailor 成功處理請求，則會傳回 HTTP 狀態碼 `200 OK`，指出成功，以及填入的資訊清單。如果請求不成功，MediaTailor 會傳回 HTTP 狀態碼、例外名稱和錯誤訊息。

AWS Elemental MediaTailor 傳回兩種類型的錯誤：
+ **用戶端錯誤** – 通常由請求本身的問題引起的錯誤，例如格式不正確的請求、無效的參數或錯誤的 URL。這些錯誤會有 HTTP `4xx` 回應代碼。
+ **伺服器錯誤** – 通常由 MediaTailor 或其其中一個相依性的問題引起的錯誤，例如廣告決策伺服器 (ADS) 或原始伺服器。這些錯誤會有 HTTP `5xx` 回應代碼。

**Topics**
+ [傳回的用戶端播放錯誤 AWS Elemental MediaTailor](#playback-errors-client)
+ [傳回的伺服器播放錯誤 AWS Elemental MediaTailor](#playback-errors-server)
+ [播放錯誤範例](#playback-errors-examples)

## 傳回的用戶端播放錯誤 AWS Elemental MediaTailor
<a name="playback-errors-client"></a>

一般指引：
+ 您可以在回應的標頭和內文中找到大多數錯誤的詳細資訊。
+ 對於某些錯誤，您需要檢查組態設定。您可以從中擷取播放組態的設定 AWS Elemental MediaTailor。對於 API，資源為 `GetPlaybackConfiguration/Name`。如需詳細資訊，請參閱 [AWS Elemental MediaTailor API 參考](https://docs.aws.amazon.com/mediatailor/latest/apireference/)。

下表列出資訊清單操作活動所傳回的用戶端錯誤代碼 AWS Elemental MediaTailor、可能的原因，以及您可以採取來解決這些問題的動作。


| Code  | 例外狀況名稱  | 意義 | 處理方式 | 
| --- | --- | --- | --- | 
| 400 | BadRequestException | 由於格式或內容發生一或多個錯誤，MediaTailor 無法為請求提供服務。參數的格式可能錯誤，或是請求可能包含無效的播放組態或工作階段 ID。 | 確認您的請求格式正確，並包含準確的資訊。確定播放器上的播放端點設定符合 GetPlaybackConfiguration 傳回的 ManifestEndpointPrefix 設定。重試您的請求。 | 
| 403 | AccessDeniedException | 請求中提供的主機標頭與 MediaTailor 播放 URL 中設定的資訊清單端點字首不相符。您的 CDN 可能設定錯誤。 | 檢查您的 CDN 設定，並確保您使用 MediaTailor 的正確資訊清單端點字首。重試您的請求。 | 
| 404 | NotFoundException | MediaTailor 找不到指定的資訊。可能的原因包括 URL 未對應到服務中的任何項目、組態未定義，或工作階段不可用。 | 檢查您的組態與請求的有效性，然後重新初始化工作階段。 | 
| 409 | ConflictException | 播放器嘗試對單一工作階段同時載入多個播放清單。因此，MediaTailor 偵測到工作階段一致性衝突。HLS 播放器會發生此問題。 | 確定您的播放器一次請求一個播放清單。這會符合 HLS 規格。 | 
| 410 | Gone |  AWS Support 運算子已封鎖玩家工作階段或客戶組態。在極少數情況下，當單一工作階段或組態偵測到非常大量的 4xx 請求來自錯誤流量時， AWS Support 會這麼做。 | 如果您認為請求不應遭到封鎖，請聯絡 [AWS Support](https://aws.amazon.com/premiumsupport/)。他們可以調查此情況，並在適當時移除封鎖篩選。 | 

 如果您需要進一步協助，請聯絡 [AWS Support](https://aws.amazon.com/premiumsupport/)。

## 傳回的伺服器播放錯誤 AWS Elemental MediaTailor
<a name="playback-errors-server"></a>

一般指引：
+ 您可以在回應的標頭和內文中找到大多數錯誤的詳細資訊。
+ 對於某些錯誤，您需要檢查組態設定。您可以從中擷取播放組態的設定 AWS Elemental MediaTailor。對於 API，資源為 `GetPlaybackConfiguration/Name`。如需詳細資訊，請參閱 [AWS Elemental MediaTailor API 參考](https://docs.aws.amazon.com/mediatailor/latest/apireference/)。

下表列出資訊清單操作活動所傳回的伺服器錯誤代碼 AWS Elemental MediaTailor、可能的原因，以及您可以採取以解決問題的動作。


| Code | 例外狀況名稱 | 意義 | 處理方式 | 
| --- | --- | --- | --- | 
| 500 | InternalServiceError | 未處理的例外。 | 重試 請求。如果問題仍然存在，請在 檢查您所在 AWS 區域的 MediaTailor 回報運作狀態[https://status.aws.amazon.com/](https://status.aws.amazon.com/)。 | 
| 502 | BadGatewayException | 原始伺服器地址或廣告決策伺服器 (ADS) 地址無效。無效地址的範例為私有 IP 地址和 localhost。 | 請確定您的組態具有 ADS 和原始伺服器的正確設定，然後重試請求。 | 
| 502 | UnsupportedManifestException | 原始伺服器資訊清單已變更，因此 MediaTailor 無法將其個人化，或 MediaTailor 不支援原始伺服器的資訊清單格式。 | 這可能只會影響個別工作階段。重新初始化工作階段。您一般可以透過在檢視器中重新整理頁面來達成此目標。如果問題仍然存在，請確認 MediaTailor 支援原始伺服器的資訊清單格式。如需相關資訊，請參閱[整合內容來源](integrating-origin.md)。 | 
| 503 | LoadShed | MediaTailor 在處理您的請求時遇到資源限制。 | 重試 請求。如果問題仍然存在，請在 檢查您所在 AWS 區域的 MediaTailor 回報運作狀態[https://status.aws.amazon.com/](https://status.aws.amazon.com/)。 | 
| 503 | ThrottlingException | 您的交易每秒已達到配額，MediaTailor 正在限流您的使用量。 | 重試 請求。您也可以在 檢查您 AWS 區域的 MediaTailor 回報運作狀態[https://status.aws.amazon.com/](https://status.aws.amazon.com/)。您可能想要提高每秒交易次數的配額。如需詳細資訊，請參閱[廣告插入的配額](quotas.md#ad-insertion-quotas)。 | 
| 504 | GatewayTimeoutException | MediaTailor 聯絡原始伺服器時發生逾時。 | 重試 請求。如果問題仍存在，請檢查原始伺服器的運作狀態，並確保在原始伺服器在 [廣告插入的配額](quotas.md#ad-insertion-quotas) 中所列的內容原始伺服器逾時內回應。 | 

 如果您需要進一步協助，請聯絡 [AWS Support](https://aws.amazon.com/premiumsupport/)。

## 播放錯誤範例
<a name="playback-errors-examples"></a>

本節列出您可能會在命令列互動中看到的一些播放錯誤範例 AWS Elemental MediaTailor。

下列範例顯示 AWS Elemental MediaTailor 與廣告決策伺服器 (ADS) 或原始伺服器之間發生逾時時的結果。

```
~[]> curl -vvv https://111122223333444455556666123456789012.mediatailor.us-west-2.amazonaws.com/v1/master/123456789012/Multiperiod_DASH_Demo/index.mpd
*   Trying 54.186.133.224...
* Connected to 111122223333444455556666123456789012.mediatailor.us-west-2.amazonaws.com (11.222.333.444) port 555 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate: mediatailor.us-west-2.amazonaws.com
* Server certificate: Amazon
* Server certificate: Amazon Root CA 1
* Server certificate: Starfield Services Root Certificate Authority - G2
> GET /v1/master/123456789012/Multiperiod_DASH_Demo/index.mpd HTTP/1.1
> Host: 111122223333444455556666123456789012.mediatailor.us-west-2.amazonaws.com
> User-Agent: curl/7.43.0
> Accept: */*
>
< HTTP/1.1 504 Gateway Timeout
< Date: Thu, 29 Nov 2018 18:43:14 GMT
< Content-Type: application/json
< Content-Length: 338
< Connection: keep-alive
< x-amzn-RequestId: 123456789012-123456789012
< x-amzn-ErrorType: GatewayTimeoutException:http://internal.amazon.com/coral/com.amazon.elemental.midas.mms.coral/
<
* Connection #0 to host 111122223333444455556666123456789012.mediatailor.us-west-2.amazonaws.com left intact
{"message":"failed to generate manifest: Unable to obtain template playlist. origin URL:[https://777788889999.mediapackage.us-west-2.amazonaws.com/out/v1/444455556666111122223333/index.mpd], asset path: [index.mpd], sessionId:[123456789012123456789012] customerId:[123456789012]"}%
```