

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

# Amazon CloudWatch Logs に直接 AWS Elemental MediaTailor ログを書き込む
<a name="monitoring-cw-logs"></a>

MediaTailor は、セッションアクティビティ、および広告決定サーバーとのやり取りに関する詳しい情報が含まれたログを生成し、それらを Amazon CloudWatch に書き込みます。ログは、セッション中に発生したアクティビティの順次的な説明を提供します。

MediaTailor は、提供されたログを使用して、ログ配信とボリューム割引の料金に柔軟性を持たせることもできます。提供されたログの詳細については、「」を参照してください[販売ログの使用](vended-logs.md)。

**Topics**
+ [Amazon CloudWatch Logs のアクセス許可](monitoring-permissions.md)
+ [AWS Elemental MediaTailor チャネルアセンブリの「As Run」ログ](as-run-log.md)
+ [AWS Elemental MediaTailor Amazon CloudWatch Logs Insights での ADS ログ分析](monitor-cloudwatch-ads-logs.md)

# Amazon CloudWatch Logs のアクセス許可
<a name="monitoring-permissions"></a>

 AWS Identity and Access Management (IAM) を使用して、Amazon CloudWatch AWS Elemental MediaTailor へのアクセスを許可するロールを作成します。アカウントに対して CloudWatch Logs を公開するには、これらのステップを実行する必要があります。CloudWatch は、お使いのアカウントに関するメトリクスを自動的に発行します。

**CloudWatch へのアクセスを MediaTailor に許可する**

1. IAM コンソール ([https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/)) を開きます。

1. IAM コンソールのナビゲーションペインで、**[Roles]** (ロール)、**[Create role]** (ロールを作成) の順に選択します。

1. **別の AWS アカウント**ロールタイプを選択します。

1. **アカウント ID** には、 AWS アカウント ID を入力します。

1. [**Require external ID (外部 ID を必須にする)**] を選択し、「**Midas**」と入力します。このオプションにより、リクエストに正しい `sts:ExternalId` が含まれている場合にのみサービスがロールを引き受けることができるという条件が、信頼ポリシーに自動的に追加されます。

1. **[Next: Permissions]** (次のステップ: 許可) を選択します。

1. このロールが実行できるアクションを指定するアクセス許可ポリシーを追加します。以下のいずれかのオプションを選択した後、[**Next: Review (次へ: 確認)**] を選択します。
   + Amazon CloudWatch Logs への完全なアクセス権を付与するための **CloudWatchLogsFullAccess**
   + Amazon CloudWatch への完全なアクセス権を付与するための **CloudWatchFullAccess**

1. [**ロール名**] に「**MediaTailorLogger**」と入力し、[**ロールの作成**] を選択します。

1. [**ロール**] ページで、作成したロールを選択します。

1. プリンシパルを更新するには、信頼関係を編集します。

   1. ロールの [**Summary (概要)**] ページで、[**Trust relationship (信頼関係)**] タブを選択します。

   1. [**Edit trust relationship (信頼関係の編集)**] を選択します。

   1. ポリシードキュメントで、プリンシパルを MediaTailor サービスに変更します。プリンシパルは以下のようになります。

      ```
      "Principal": {
         "Service": "mediatailor.amazonaws.com"
      },
      ```

      ポリシー全体は以下のようになります。

   1. **[Update Trust Policy]** (信頼ポリシーの更新) をクリックします。

# AWS Elemental MediaTailor チャネルアセンブリの「As Run」ログ
<a name="as-run-log"></a>

*実行ログ*は、CloudWatch `MediaTailor/Channel/AsRunLog`ロググループで、再生中のプログラムと広告ブレークに関する情報を表示します。

チャネルを作成すると、実行時のログはデフォルトで無効になります。コンソールまたは AWS Command Line Interface (AWS CLI) を使用して、アカウントのチャネルごとに実行時のログ状態を有効または無効にできます。

As Run ログを有効にすると、MediaTailor はサービスにリンクされたロールを自動的に作成し、MediaTailor が CloudWatch Logs アカウントで As Run ログを書き込んで管理できるようにします。サービスにリンクされたロールの詳細については、「[MediaTailor 向けのサービスリンクロールの使用](using-service-linked-roles.md)」を参照してください。

**注記**  
As Run Log は現在、デフォルトのプログラムのみをサポートしています。現時点では、プログラムルールによって作成された alternateMedia はサポートされていません。つまり、現在 alternateMedia の実行中ログは生成されません。

**Topics**
+ [As Run ログの有効化](enabling-as-run-log.md)
+ [As Run ログの無効化](disabling-as-run-log.md)

# As Run ログの有効化
<a name="enabling-as-run-log"></a>

As Run ログを有効にするには、チャネル名を指定し、そのチャネルの *As Run* ログタイプを有効にします。

------
#### [ Console ]

**チャネルの作成時に As Run ログを有効にするには**

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/mediatailor/](https://console.aws.amazon.com/mediatailor/) で MediaTailor コンソールを開きます。

1. ナビゲーションペインで、**[Channel assembly]** (チャネルアセンブリ) > **[Channels]** (チャネル) とクリックします。

1. ナビゲーションバーで、**[Create channel]** (チャネルを作成) をクリックします。

1. **チャンネルの詳細の設定**、**出力の設定**、**アクセスコントロール**ペインで、必要に応じてチャンネルを設定します。

1. **アクセスコントロール**ペインで、**次へ**を選択します。

1. **ログペイン**の **ログタイプ** で、**実行として有効化** を選択して実行ログを有効にします。

**チャネルの更新時に As Run ログを有効にするには**
**注記**  
チャネルが現在実行中の場合は、更新する前にそのチャネルを停止する必要があります。チャネルを停止したら、**アクション** > **編集**を選択してチャネルの更新を開始できます。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/mediatailor/](https://console.aws.amazon.com/mediatailor/) で MediaTailor コンソールを開きます。

1. ナビゲーションペインで、**[Channel assembly]** (チャネルアセンブリ) > **[Channels]** (チャネル) とクリックします。

1. 更新するチャネルを選択して、As Run ログを有効にします。

1. **[Actions]** (アクション)、**[Edit]** (編集) の順に選択します。

1. **チャネルの詳細の設定**、**出力の設定**、**アクセスコントロール**ペインで、必要に応じてチャネル設定を更新します。

1. **アクセスコントロール**ペインで、**次へ**を選択します。

1. **ログペイン**の **ログタイプ** で、**実行として有効化** を選択して実行ログを有効にします。

****ログ記録**タブから As Run ログを有効にするには**
**注記**  
チャネルが現在実行中の場合は、**Actions** > **Edit** を選択して As Run ログを有効にする代わりに、**Logging** タブを使用する必要があります。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/mediatailor/](https://console.aws.amazon.com/mediatailor/) で MediaTailor コンソールを開きます。

1. ナビゲーションペインで、**[Channel assembly]** (チャネルアセンブリ) > **[Channels]** (チャネル) とクリックします。

1. As Run ログを有効にするチャネルを選択します。

1. チャネルの名前の下にあるナビゲーションバーで、**ログ記録**を選択します。

1. **ログ記録** > **ログタイプ**で、**As run **を選択して As Run ログを有効にします。

------
#### [ AWS Command Line Interface (AWS CLI) ]

**As Run ログを有効にするには**

[configure-logs-for-channel](https://docs.aws.amazon.com/cli/latest/reference/mediatailor/configure-logs-for-channel.html) コマンドを実行し、必要なパラメータに適切な値を指定します。

この例は Linux、macOS、または Unix 用にフォーマットされており、読みやすさを向上させるためにバックスラッシュ (\$1) の行継続文字を使用しています。

```
$ aws mediatailor configure-logs-for-channel \
--channel-name MyChannel \
--log-types AS_RUN
```

この例は Microsoft Windows 用にフォーマットされており、読みやすさを向上させるためにキャレット (^) の行継続文字を使用しています。

```
C:\> aws mediatailor configure-logs-for-channel ^
--channel-name MyChannel ^
--log-types AS_RUN
```

上記の中で、
+ `MyChannel` は、所有していて As Run ログを有効にするチャネルの名前です。

コマンドが正常に実行された場合は、以下のような出力が表示されます。

```
{
    "ChannelName": "MyChannel",
    "LogTypes": [
       "AS_RUN"
    ]
}
```

------

# As Run ログの無効化
<a name="disabling-as-run-log"></a>

有効にしたチャネルの As Run ログを無効にするには、チャネル名を指定し、そのチャネルの *As Run* ログタイプを無効にします。

------
#### [ Console ]

**チャネルの更新時に As Run ログを無効にするには**
**注記**  
チャネルが現在実行中の場合は、更新する前にそのチャネルを停止する必要があります。チャネルを停止したら、**アクション** > **編集**を選択してチャネルの更新を開始できます。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/mediatailor/](https://console.aws.amazon.com/mediatailor/) で MediaTailor コンソールを開きます。

1. ナビゲーションペインで、**[Channel assembly]** (チャネルアセンブリ) > **[Channels]** (チャネル) とクリックします。

1. 更新するチャネルを選択して、As Run ログを有効にします。

1. **[Actions]** (アクション)、**[Edit]** (編集) の順に選択します。

1. **「チャネルの詳細の設定**」、**「出力の設定**」、および**「アクセスコントロール**」ペインで、必要に応じてチャネル設定を更新します。

1. **アクセスコントロール**ペインで、**次へ**を選択します。

1. **ログペイン**の**ログタイプ**で、**実行として有効に**して実行ログを無効にします。

****ログ記録**タブから As Run ログを無効にするには**
**注記**  
チャネルが現在実行中の場合は、**Actions** > **Edit** を選択して As Run ログを無効にする代わりに、**Logging** タブを使用する必要があります。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/mediatailor/](https://console.aws.amazon.com/mediatailor/) で MediaTailor コンソールを開きます。

1. ナビゲーションペインで、**[Channel assembly]** (チャネルアセンブリ) > **[Channels]** (チャネル) とクリックします。

1. As Run ログを無効にするチャネルを選択します。

1. チャネルの名前の下にあるナビゲーションバーで、**ログ記録**を選択します。

1. **ログ記録** > **ログタイプ**で、**As run** をクリアして As Run ログを無効にします。

------
#### [ AWS Command Line Interface (AWS CLI) ]

**As Run ログを無効にするには**

[configure-logs-for-channel](https://docs.aws.amazon.com/cli/latest/reference/mediatailor/configure-logs-for-channel.html) コマンドを実行し、必要なパラメータに適切な値を指定します。

この例は Linux、macOS、または Unix 用にフォーマットされており、読みやすさを向上させるためにバックスラッシュ (\$1) の行継続文字を使用しています。

```
$ aws mediatailor configure-logs-for-channel \
--channel-name MyChannel \
--log-types
```

この例は Microsoft Windows 用にフォーマットされており、読みやすさを向上させるためにキャレット (^) の行継続文字を使用しています。

```
C:\> aws mediatailor configure-logs-for-channel ^
--channel-name MyChannel ^
--log-types
```

上記の中で、
+ `MyChannel` は、所有し、As Run ログを無効にするチャネルの名前です。

コマンドが正常に実行された場合は、以下のような出力が表示されます。

```
{
    "ChannelName": "MyChannel",
    "LogTypes": []
}
```

------

# AWS Elemental MediaTailor Amazon CloudWatch Logs Insights での ADS ログ分析
<a name="monitor-cloudwatch-ads-logs"></a>

Amazon CloudWatch Logs Insights を使用して、 AWS Elemental MediaTailor 広告決定サーバー (ADS) ログを表示およびクエリできます。MediaTailor は、通常の処理とエラー状態に関するイベントログを CloudWatch に送信します。ログは JSON スキーマに従っています。CloudWatch Logs Insights を使用して、時間枠ごとにログを選択してから、それらに対してクエリを実行できます。

一般情報については、「[CloudWatch Logs Insights を使用したログデータの分析](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html)」を参照してください。

**注記**  
ログにアクセスするには、Amazon CloudWatch にアクセスするための許可が必要です。手順については、「[Amazon CloudWatch Logs のアクセス許可](monitoring-permissions.md)」を参照してください。

**CloudWatch コンソールを使用して ADS ログを表示してクエリする**

1. CloudWatch コンソール ([https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/)) を開きます。

1. ナビゲーションペインの **[Logs]** (ログ) で **[Insights]** (インサイト) をクリックします。

1. 検索バーで と入力し**AdDec**、ドロップダウンリストから を選択します`MediaTailor/AdDecisionServerInteractions`。

1. (オプション) 調査する期間を調整します。

1. (オプション) ダイアログボックスでクエリを変更します。一般的なガイダンスについては、「[CloudWatch Logs Insights のクエリ構文](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html)」を参照してください。MediaTailor ADS に関するクエリの例については、「[ADS ログのクエリ](querying-the-ads-logs.md)」を参照してください。

1. **[Run query]** (クエリの実行) を選択します。クエリには数秒かかる場合があり、その間は **[Run query]** (クエリの実行) の代わりに **[Cancel]** (キャンセル) が表示されます。

1. (オプション) 結果を CSV ファイルとしてエクスポートするには、[**アクション**]、[**クエリ結果のダウンロード (CSV) **]の順に選択します。

**注記**  
コンソールは、クエリ結果で返されるレコードとエクスポートされるレコードの数を制限するため、バルクデータには API、 AWS Command Line Interface (AWS CLI)、または SDK を使用します。

**Topics**
+ [ADS ログのクエリ](querying-the-ads-logs.md)

# ADS ログのクエリ
<a name="querying-the-ads-logs"></a>

CloudWatch Logs は、ログをクエリするための豊富なオプションを提供します。クエリ構文に関する詳細情報については、「[CloudWatch Logs Insights のクエリ構文](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html)」を参照してください。このセクションには、ADS ログクエリの使用を開始するための一般的なクエリの例が記載されています。すべてのクエリは、現在の時間範囲設定のログに対して実行されます。

以下のクエリは、ADS ログからすべての情報を取得します。

```
fields @timestamp, eventType, sessionId, requestId, @message
| sort sessionId, @timestamp asc
```

以下のクエリは、ADS に対するすべてのリクエストを取得します。このクエリは、MediaTailor ログのリクエストヘッダーコンテンツを取得する方法を示しています。

```
fields @timestamp, adsRequestUrl, requestHeaders.0.value as @userAgent, requestHeaders.1.value as @xForwardedFor, sessionId, requestId
| filter eventType = "MAKING_ADS_REQUEST"
| sort @timestamp asc
```

以下のクエリは、MediaTailor が所定のセッションに挿入した広告を取得します。

```
fields @timestamp, sessionId, requestId, @message
| filter eventType = "FILLED_AVAIL"
| sort @timestamp asc
```

以下のクエリは、MediaTailor がプレイヤーに代わって呼び出した追跡 URL を取得します。

```
fields @timestamp, beaconInfo.trackingEvent, beaconInfo.beaconUri, beaconInfo.headers.0.value as @userAgent, beaconInfo.headers.1.value as @xForwardedFor, sessionId, requestId
| filter eventType = "BEACON_FIRED"
| sort @timestamp asc
```

以下のクエリは、`sessionId` で結果をフィルタリングすることによって、特定の再生セッションの情報を取得します。

```
fields @timestamp, eventType, sessionId, requestId, @message
| filter sessionId = "0aaf6507-c6f9-4884-bfe7-f2f841cb8195"
| sort @timestamp asc
```

以下のクエリは、`requestId` で結果をフィルタリングすることによって、単一のリクエストの情報を取得します。

```
fields @timestamp, eventType, sessionId, requestId, @message
| filter requestId = "f5d3cf39-6258-4cf1-b3f6-a34ff8bf641d"
| sort @timestamp asc
```

以下のクエリは、ログに記録された各イベントタイプのログエントリの数を取得します。

```
fields eventType
| stats count() as @eventCount by eventType
```

以下のクエリは、広告をスキップしたすべての avail に対する avail ID とスキップされた広告のリストを取得します。

```
fields avail.availId
| parse @message '"skippedAds":[*]' as @skippedAdsList
| filter ispresent(@skippedAdsList)
```