

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# AWS Elemental MediaTailor Amazon 日志见解中的 ADS CloudWatch 日志分析
<a name="monitor-cloudwatch-ads-logs"></a>

您可以使用 Amazon Logs Insights 查看和查询 AWS Elemental MediaTailor 广告决策服务器 (ADS) CloudWatch 日志。 MediaTailor 将事件日志发送到， CloudWatch 用于正常处理和错误情况。日志遵循 JSON 架构。通过 CloudWatch Logs Insights，您可以按时间范围选择日志，然后对其进行查询。

有关一般信息，请参阅[使用日志见解分析 CloudWatch 日志数据](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AnalyzingLogData.html)。

**注意**  
要访问日志，您需要访问Amazon的权限 CloudWatch。有关说明，请参阅[Amazon CloudWatch 日志的权限](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 日志见解查询语法](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/CWL_QuerySyntax.html)。有关 MediaTailor ADS 的查询的示例，请参阅 [查询 ADS 日志](querying-the-ads-logs.md)。

1. 选择**运行查询**。该查询可能需要几秒钟时间，在此期间，将显示 **Cancel (取消)** 来代替 **Run query (运行查询)**。

1. （可选）要将结果导出为 CSV 文件，请选择 **Actions (操作)**，然后选择 **Download query results (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 Insights 提供了一组丰富的查询日志的选项。有关查询语法的详细信息，请参阅[CloudWatch 日志见解查询语法](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 调 URLs 用的跟踪。

```
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
```

以下查询检索已跳过广告的所有效用的效用 ID 和已跳过广告列表。

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