AWS Elemental MediaTailor デバッグログの生成 - AWS Elemental MediaTailor

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Elemental MediaTailor デバッグログの生成

デバッグログを使用して、MediaTailor 広告挿入の再生セッション問題をトラブルシューティングします。デバッグログを生成するには、MediaTailor に対するプレイヤーのリクエストのログモードをデバッグに設定します。サーバー側のレポートの場合は、再生リクエストでログモードを設定します。クライアント側のレポートの場合は、セッション開始リクエストでログモードを設定します。

ログモードがデバッグに設定されている場合、MediaTailor はすべてのログイベントタイプを CloudWatch Logs に書き込みます。ログには、以下のイベントに関する情報が記載されています。デバッグログで生成されるデータの完全なリストについては、「デバッグログのフィールド」を参照してください。

  • オリジンインタラクション – オリジンサーバーとの MediaTailor インタラクションに関する詳細。例えば、オリジンマニフェストレスポンス、マニフェストタイプ、およびオリジン URL などです。

  • 生成されたマニフェスト - MediaTailor からの再生セッションレスポンスに関する詳細情報。例えば、MediaTailor が生成するマニフェストなどです。

  • 開始されたセッション - セッション ID などのセッション開始に関する詳細情報。

セッションごとに受け取るログイベントタイプをカスタマイズするには、「」を参照してくださいログとイベントのフィルタリング

前提条件

ログモードをデバッグに設定するには、まず CloudWatch にログを送信するための許可を MediaTailor に付与する必要があります (まだ付与していない場合)。CloudWatch にアクセスするための許可を MediaTailor に付与したら、デバッグログモードを有効にする準備が整います。CloudWatch にアクセスするための許可を MediaTailor に付与する方法については、「Amazon CloudWatch の許可のセットアップ」を参照してください。

ログモードをデバッグに設定する方法

このセクションでは、サーバー側のレポートとクライアント側のレポートのログモードをデバッグに設定する方法を説明します。

サーバー側のレポート

サーバー側のレポートの場合、HLS または DASH MediaTailor エンドポイントに対するプレイヤーの GET HTTP 再生リクエストに ?aws.logMode=DEBUG クエリのパラメータと値を含めます。サーバー側のレポートに関する一般情報については、「サーバー側のレポート」を参照してください。

重要

DEBUG 値では、大文字と小文字が区別されます。

?aws.logMode=DEBUG が含まれる再生リクエストは、以下のようになります。

例 HLS エンドポイントに対する再生リクエスト
GET <mediatailorURL>/v1/master/<hashed-account-id>/<origin-id>/<asset-id>?aws.logMode=DEBUG

ログモードをデバッグに設定した後は、デバッグログセッションがアクティブであることを確認することが推奨されます。デバッグセッションがアクティブであることを確認するには、そのセッション ID に関する CloudWatch のログが存在するかどうかをチェックします。セッション ID は、MediaTailor が提供する再生エンドポイントに含まれています。詳細については、「Verify that the debug log mode is active for your playback session」を参照してください。

クライアント側のレポート

クライアント側のレポートの場合は、MediaTailor の /v1/session エンドポイントに対するクライアントの POST HTTP セッション開始リクエストボディに logMode キーと DEBUG 値を含めます。クライアント側のレポートに関する一般情報については、「クライアント側のレポート」を参照してください。

重要

DEBUG 値では、大文字と小文字が区別されます。

ログモードをデバッグに設定した後は、デバッグセッションがアクティブであることを確認することが推奨されます。デバッグセッションがアクティブであることを確認するには、そのセッション ID に関連付けられた SESSION_INITIALIZED イベントが CloudWatch のログにあるかどうかを確認します。セッション ID は、MediaTailor が提供する再生エンドポイントに含まれています。詳細については、「Verify that the debug log mode is active for your playback session」を参照してください。

アクティブなデバッグセッションの最大数

アクティブなデバッグログセッションは、最大 10 個まで設定できます。プレイヤーがそのセッション開始または再生リクエストを MediaTailor に送信すると、MediaTailor がこの制限に到達しているかどうかをチェックします。到達している場合、MediaTailor は古いセッションがあるかどうかをチェックします。セッションは、一定期間内にアクセスされなかった場合に古いと見なされます。この期間は、ライブストリームの場合は 10 分、VOD ストリームの場合は 30 分です。

アクティブなデバッグログセッション数の上限に到達した場合、セッションに関するデバッグログは CloudWatch Logs に書き込まれません。セッションに関するデバッグログが CloudWatch Logs にない場合は、この上限に到達している可能性があります。制限に到達したかどうかを確認するには、「Verify that the debug log mode is active for your playback session」を参照してください。

デバッグログのフィールド

以下の表は、MediaTailor が CloudWatch に書き込むデバッグログのフィールドのリストです。

フィールド 説明
awsAccountId AWS アカウント ID。
customerId MediaTailor カスタマー ID。
eventTimestamp デバッグログイベントに関連付けられた ISO 8601 タイムスタンプ。
eventType デバッグログイベントのタイプ。

値:

  • ORIGIN_INTERACTION – オリジンサーバーとの MediaTailor インタラクションに関する詳細。例えば、オリジンマニフェストレスポンス、マニフェストタイプ、およびオリジン URL などです。

  • GENERATED_MANIFEST - MediaTailor からの再生セッションレスポンスに関する詳細情報。例えば、MediaTailor が生成するマニフェストなどです。

  • SESSION_INITIALIZED - セッション ID などのセッション開始に関する詳細情報。

originRequestUrl このリクエスト用に取得されたオリジンサーバーの URL。
mediaTailorPath 呼び出された MediaTailor エンドポイント。最初のマニフェストリクエストで MediaTailor に渡されたパラメータが含まれます。
requestId MediaTailor に対する特定の HTTP リクエストの ID。
responseBody MediaTailor からのレスポンスボディ内のマニフェスト。これは、raw オリジンマニフェストか、MediaTailor によって生成されたマニフェストのどちらかになります。
sessionId 再生セッション ID。
sessionType 再生セッションのタイプ。

値: HLSDASH

デバッグログを読み取る

MediaTailor は、Amazon CloudWatch Logs にデバッグログを書き込みます。これには、一般的な CloudWatch Logs 料金が適用されます。デバッグログの読み取りには CloudWatch Insights を使用してください。CloudWatch Logs Insights の使用方法については、AWS CloudWatch Logs ユーザーガイドの「CloudWatch Logs Insights を使用したログデータの分析」を参照してください。

注記

デバッグログが CloudWatch に表示されるには、数分かかる場合があります。ログが表示されない場合は、数分待ってから再試行してください。それでもログが表示されない場合は、アクティブなデバッグログセッションの最大数に到達している可能性があります。到達しているかどうかを確認するには、CloudWatch クエリを実行して、再生セッション向けに開始されたデバッグセッションがあったかどうかを調べます。詳細については、「Verify that the debug log mode is active for your playback session」を参照してください。

このセクションには、MediaTailor のデバッグログデータの読み取りに使用できるサンプルクエリが記載されています。

例 1: 再生セッションのデバッグログモードがアクティブであることを確認する
fields @timestamp, @message | filter sessionId = "32002de2-837c-4e3e-9660-f3075e8dfd90" | filter eventType = "SESSION_INITIALIZED" # client-side reporting or mediaTailorPath like “/v1/master" # server-side reporting HLS or mediaTailorPath like “/v1/dash" # server-side reporting DASH
例 2: オリジンからのレスポンスを表示する
fields @timestamp, responseBody, @message, mediaTailorPath | filter eventType = "ORIGIN_MANIFEST" and sessionId = "32002de2-837c-4e3e-9660-f3075e8dfd90"
例 3: 所定のセッションについて MediaTailor が生成したマニフェストを表示する
fields @timestamp, responseBody, @message | filter mediaTailorPath like "/v1/master/" and eventType = "GENERATED_MANIFEST" and sessionId = "32002de2-837c-4e3e-9660-f3075e8dfd90"
例 4: 所定の requestId に関するすべてのイベントを表示する

このクエリを使用して、オリジンマニフェストと MediaTailor によって生成されたマニフェストを表示します。

fields @timestamp, responseBody, @message, mediaTailorPath | filter requestId = "e5ba82a5-f8ac-4efb-88a0-55bed21c45b4"