

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

# MediaTailor 跳过广告疑难解答指南
<a name="troubleshooting-ad-skipping-overview"></a>

跳过广告是 MediaTailor 客户报告的最常见问题之一。本指南可帮助您识别广告跳过问题并提供 step-by-step故障排除程序。

## 症状和影响
<a name="ad-skipping-symptoms"></a>

当出现跳过广告时，您可能会发现以下症状：
+ 广告不会在预期的广告时间段内展示
+ 广告插播时间显示的是内容而不是广告
+ 在不同的观看会话中，广告播放不一致
+ CloudWatch 显示具有各种跳过原因`AdSkipped`的事件的日志

跳过广告会直接影响收入，并可能造成较差的观众体验。及时解决这些问题以保持最佳性能。

## 确定跳过的原因
<a name="identifying-skip-reasons"></a>

使用 CloudWatch Logs Insights 在`MediaTailor/AdDecisionServerInteractions`日志组中查询跳过的广告：

```
fields @timestamp, avail.availId, skippedAds.0.skippedReason, skippedAds.0.creativeUniqueId
| filter eventType = "FILLED_AVAIL" and ispresent(skippedAds.0.skippedReason)
| sort @timestamp desc
```

此查询会返回最新的广告跳过事件及其具体原因，以帮助您识别模式。

**Topics**
+ [症状](#ad-skipping-symptoms)
+ [跳过理由](#identifying-skip-reasons)
+ [全新\$1CREATIVE 跳绳](troubleshooting-new-creative-skipping.md)
+ [跳过 ADS 超时](troubleshooting-ads-timeout-skipping.md)
+ [VAST 解析跳过](troubleshooting-vast-parsing-skipping.md)
+ [时长不匹配跳过](troubleshooting-duration-mismatch-skipping.md)
+ [会话变量跳过](troubleshooting-session-variables-skipping.md)
+ [监控广告跳过](monitoring-ad-skipping-issues.md)
+ [最佳预防实践](preventing-ad-skipping-best-practices.md)
+ [参考资料](ad-skipping-reference-materials.md)

# MediaTailor NEW\$1CREATIVE 广告跳过问题排
<a name="troubleshooting-new-creative-skipping"></a>

当广告被跳过并说明`NEW_CREATIVE`原因时， AWS Elemental MediaTailor 遇到了需要在插入之前进行转码的广告。本故障排除指南解释了原因并提供了 step-by-step解决程序。

## 是什么原因导致跳过 NEW\$1CREATIVE
<a name="new-creative-causes"></a>

MediaTailor 根据三个关键因素对广告进行转码：广告素材 ID、AWS 账户 ID 和转码变体集（底层内容流的播放格式副本）。当广告素材 ID 或转码变体集的任何部分不同时，会将广告 MediaTailor 识别为需要转码的新变体。

### 比特率变化
<a name="bitrate-changes-cause"></a>

当四舍五入到最接近的 8,000 位后比特率不匹配时，比特率更改可能会导致 NEW\$1CREATIVE 跳过。这通常发生在以下情况下：
+ 底层内容流会更改主清单
+ 创建新会话时使用的变体与现有会话不同
+ 各个播放会话的内容流比特率不一致

#### 收集任务带宽差异
<a name="harvest-job-bandwidth-variance"></a>

对于收获作业，在将广告与内容流匹配时 MediaTailor 使用 15% 的带宽差异阈值。如果直播带宽与采集到的 HLS 文件的带宽之间存在 15% 或以上的差异，则广告将再次被转码。这可能会导致 NEW\$1CREATIVE 在转码过程中跳过。

这种行为通常发生在以下情况下：
+ 直播和 VOD 内容都使用相同的预转码广告
+ 采集的内容与原始直播具有不同的编码参数
+ 直播内容和采集内容之间的带宽差异超过了 15% 的阈值

### 创意 ID 冲突
<a name="creative-id-conflicts-cause"></a>

当 MediaTailor 遇到已转码的媒体文件的不同广告素材 ID 时，会出现以下顺序：

1. 跳过广告的原因是 NEW\$1CREATIVE

1. 这会导致不必要的转码尝试

1. 广告素材被标记为 DUPLICATE\$1TRANSCODE 或 COPY\$1DEDUP

**注意**  
MediaTailor 不会过期，也不会删除转码后的广告。我们将它们无限期地存储在 MediaTailor拥有的 S3 存储桶中。

## 解决步骤
<a name="new-creative-resolution-steps"></a>

要解决 NEW\$1CREATIVE 广告跳过问题：

1. 验证您的广告决策服务器是否 IDs 为相同的广告内容返回一致的广告素材。

1. 检查您的内容流是否保持一致的比特率和变体集。

1. 考虑实施广告预取，确保广告在播放前进行转码。有关更多信息，请参阅 [预取广告](prefetching-ads.md)。

1. 对于持续存在的问题，请联系 [AWS Supp](https://aws.amazon.com/premiumsupport/) ort 以获取更多故障排除帮助。

## 监控 “新创意” 模式
<a name="new-creative-monitoring"></a>

使用此 CloudWatch Logs Insights 查询来分析 NEW\$1CREATIVE 广告跳过的模式：

```
fields @timestamp, sessionId, creativeId, skipReason, MediaFileSourceUrl
| filter skipReason = "NEW_CREATIVE"
| stats count() by creativeId, MediaFileSourceUrl
| sort count desc
| limit 50
```

# MediaTailor ADS 超时广告跳过故障排除
<a name="troubleshooting-ads-timeout-skipping"></a>

当由于`ADS_TIMEOUT`或相关原因而被跳过广告时，您的广告决策服务器会出现连接或性能问题。 AWS Elemental MediaTailor 需要与您的 ADS 进行可靠的通信才能成功插入广告。本故障排除指南说明了如何识别和解决这些连接问题。

## 常见的 ADS 连接问题
<a name="ads-timeout-causes"></a>

常见的 ADS 连接问题包括：
+ 无法从中访问广告决策服务器 MediaTailor
+ ADS 在配置的超时时间内没有响应
+ 在高峰时段，ADS 无法处理请求量
+ 与您的 ADS MediaTailor 之间的网络连接问题

## 解决步骤
<a name="ads-timeout-resolution"></a>

要解决 ADS 超时问题，请执行以下操作：

1. 确认您的广告决策服务器可以从中访问 MediaTailor。

1. 检查您的 ADS 是否在配置的超时时间内响应。

1. 确保您的 ADS 能够在高峰时段处理请求量。

1. 当你的主广告不可用时，可以考虑实施备用广告策略。

## 监控 ADS 性能
<a name="ads-timeout-monitoring"></a>

为该`AdDecisionServer.Timeouts`指标设置 CloudWatch 警报，以主动检测 ADS 连接问题。

# MediaTailor VAST 解析广告跳过故障排除
<a name="troubleshooting-vast-parsing-skipping"></a>

使用`VAST_PARSING_ERROR`或跳过广告时`MEDIA_FILE_UNAVAILABLE`，您的 VAST 响应或广告媒体文件会出现问题。 AWS Elemental MediaTailor 要成功插入广告，需要格式正确的 VAST 响应和可访问的媒体文件。本疑难解答指南介绍了如何识别和解决这些问题。

## 常见的 VAST 问题
<a name="vast-parsing-causes"></a>

常见的 VAST 问题包括：
+ VAST 响应格式不符合 VAST 规范
+ VAST 响应 URLs 中的媒体文件无法公开访问
+ 在 VAST XML 中未正确编码特殊字符
+ VAST 响应缺少所需的媒体文件或格式

## 解决步骤
<a name="vast-parsing-resolution"></a>

要解决 VAST 解析问题，请执行以下操作：

1. 根据 VAST 规范验证您的 VAST 响应格式。

1. 确保 VAST 响应 URLs 中的所有媒体文件均可公开访问。

1. 检查 VAST XML 中特殊字符的编码是否正确。

1. 验证您的 VAST 响应中是否包含与兼容格式的媒体文件 MediaTailor。

## VAST 封装器故障排除
<a name="vast-wrapper-issues"></a>

对于`INVALID_VAST_WRAPPER_AD`或的问题`REJECTED_REPLICA_VAST`：
+ 根据 VAST 规范验证 VAST 包装器响应
+ 确保所有包装器元素的格式正确且包含有效 VASTAd的 tagUri
+ 检查广告服务器配置中是否存在重复内容检测策略
+ 确保 VAST 回复在同一会话中包含独特的创意内容

# MediaTailor 时长不匹配广告跳过故障排除
<a name="troubleshooting-duration-mismatch-skipping"></a>

如果因与`AVAIL_DURATION_EXCEEDED`、或格式相关的原因而跳过广告`LEFTOVER_AVAIL_EXCEEDED_THRESHOLD`，则会出现时长或格式兼容性问题。 AWS Elemental MediaTailor 需要适当的持续时间格式以及广告内容和可用的广告中断时间之间的匹配。本故障排除指南介绍了如何识别和解决这些与持续时间相关的问题。

## 常见的持续时间问题
<a name="duration-mismatch-causes"></a>

常见的持续时间问题包括：
+ 广告长于可用广告时长
+ 内容中的广告插播标记不正确，表示时长不正确
+ 广告插入未达到个性化门槛
+  EXT-X-CUE-OUT标签中的持续时间格式不正确

## 时长格式要求
<a name="duration-format-requirements"></a>

 EXT-X-CUE-OUT标签持续时间参数的格式必须为整数值，而不是 ISO 8601 持续时间格式。


**时长格式要求**  

| 格式 | 示例 | Status | 
| --- | --- | --- | 
| 整数（正确） | 32 | 支持-代表 32 秒 | 
| 十进制（正确） | 30.000 | 支持-代表 30 秒 | 
| ISO 8601（不正确） | PT32S | 不支持-导致插入失败 | 

## 解决步骤
<a name="duration-mismatch-resolution"></a>

要解决持续时间不匹配问题，请执行以下操作：

1. 确保您的广告返回的广告符合可用的广告时长。

1. 检查内容中的广告插播标记是否正确显示了预期的持续时间。

1. 验证 EXT-X-CUE-OUT持续时间参数是否使用整数格式。

1. 如果适合您的用例，请考虑调整个性化阈值。

# MediaTailor 会话变量广告跳过疑难解答
<a name="troubleshooting-session-variables-skipping"></a>

会话变量在广告定位和选择中起着至关重要的作用 AWS Elemental MediaTailor。会话变量配置不正确是导致广告跳过问题的常见原因。这份全面的疑难解答指南介绍了如何识别和解决会话变量问题，这些问题可能会阻碍广告成功插入。

## 常见的会话变量问题
<a name="session-variable-issues"></a>

常见的会话变量问题包括：
+ **缺少必填变量**：您的广告决策服务器可能需要未提供的特定变量。
+ **变量语法不正确**：变量必须使用正确的语法（例如，`[session.id]`而不是`${session.id}`）。
+ **URL 编码问题**：变量值中的特殊字符可能需要正确的 URL 编码。
+ **玩家参数不一致**：玩家参数必须始终如一地跨会话传递。
+ **动态变量解析失败**：无法解析的变量被替换为空字符串。
+ **SCTE-35 UPID 解析问题**：分段 UPID 处理问题可能会导致会话变量解析失败。

## 验证会话变量分辨率
<a name="session-variable-verification"></a>

要验证您的会话变量是否已正确解析，请执行以下操作：

1. 为您的 MediaTailor 配置启用调试日志记录

1. 检查`MediaTailor/AdDecisionServerInteractions`日志组中是否有实际的 ADS 请求 URLs

1. 确认模板 URL 中的所有变量都已替换为适当的值

1. 查找任何被空字符串替换的变量，这可能表示解析失败

## SCTE-35 UPID 解析疑难解答
<a name="upid-parsing-troubleshooting"></a>

SCTE-35 分段 UPID 处理问题可能会导致会话变量问题：
+ **格式要求：**UPID 必须为 12 并包含`segmentation_upid_type``format_identifier`在内才能正确处理
+ 解@@ **析规则：**解码后的 UPID 可以包含多个值的冒号分隔符。模板变量和解码后的 UPID 标记的数量必须相等
+ **无效格式：**避免使用没有值的双冒号（例如`::`或`:46175218::4053`），因为它们会导致解析失败

# MediaTailor 广告跳过监控和警报
<a name="monitoring-ad-skipping-issues"></a>

主动监控可帮助您在广告跳过问题严重影响收入之前检测并解决这些问题。 AWS Elemental MediaTailor 提供全面的指标和日志记录功能，可有效监控广告插入效果。本指南介绍如何设置有效监控跳过广告的问题。

## 要 CloudWatch 监控的关键指标
<a name="cloudwatch-metrics-monitoring"></a>

为以下关键 MediaTailor 指标设置 CloudWatch 警报：
+ `AdDecisionServer.Ads.Skipped`-跳过的广告数量
+ `AdDecisionServer.Timeouts`-ADS 超时次数
+ `Avail.FilledDuration`-已填充广告时段的持续时间
+ `Avail.SlateOnly`-仅使用标题填充的广告插播次数

## 高级 CloudWatch 日志见解查询
<a name="advanced-cloudwatch-queries"></a>

使用以下专门查询进行详细的故障排除：

### 全面的会话分析
<a name="comprehensive-session-analysis-query"></a>

要详细分析特定会话的广告插入行为，请执行以下操作：

```
fields @timestamp, sessionId, eventType, creativeId, skipReason, adBreakIndex
| filter sessionId = "your-session-id-here"
| filter eventType in ["FILLED_AVAIL", "SKIPPED_AVAIL", "MAKING_ADS_REQUEST"]
| sort @timestamp asc
| limit 100
```

### 寻找创意 IDs
<a name="creative-id-identification-query"></a>

要 IDs 从 FILLED\$1AVAIL 事件中识别创意，请执行以下操作：

```
fields @timestamp, sessionId, eventType
| filter sessionId like /sessionId/ and eventType!='BEACON_FIRED'
| sort @timestamp desc
```

**注意**  
`sessionId`替换为您正在调查的实际会话 ID。

# MediaTailor 广告跳过防护最佳实践
<a name="preventing-ad-skipping-best-practices"></a>

实施这些最佳实践有助于在广告跳过问题发生之前将其防患 AWS Elemental MediaTailor于未然，从而确保更好的广告插入效果和收入保护。这些主动措施可以解决跳过广告的最常见原因，并有助于保持广告投放的一致性。

## 积极的措施
<a name="proactive-measures"></a>
+ **实现广告预取**：使用 MediaTailor预取功能可确保在播放之前对广告进行转码。有关实现[预取广告](prefetching-ads.md)的详细信息，请参阅
+ **保持一致的广告创意 IDs**：确保您的广告决策服务器在不同会话中 IDs 对相同的广告内容使用一致的广告素材
+ **确保持续时间格式正确**：使用整数值作为 EXT-X-CUE-OUT持续时间参数，而不是 ISO 8601 格式
+ **配置 VOD 优化**：为带有多个广告时段的 VOD 直播设置 maxConcurrentAds请求以减少服务器负载
+ **优化 ADS 效果**：将您的广告决策服务器配置为快速响应并处理峰值流量

## 实施指南
<a name="implementation-guidelines"></a>
+ **实施正确的错误处理**：配置 slate 内容以在无法插入广告时填充广告插播时间
+ **全面测试**：在不同的设备和网络条件下验证您的广告插入工作流程
+ **实施后备策略**：配置备用广告来源或默认广告，以备主广告来源失败时使用
+ **监控转码模式**[：监控 CloudWatch 日志以提高转码效率，如果您发现存在转码问题的模式，请联系 AWS Support](https://aws.amazon.com/premiumsupport/)

# MediaTailor 跳过广告参考指南
<a name="ad-skipping-reference-materials"></a>

本节提供有关广告跳过原因的全面参考信息，以及相关文档的链接 AWS Elemental MediaTailor。使用本参考指南了解不同跳过原因的具体含义并查找其他疑难解答资源。

## 完整广告跳过原因参考
<a name="complete-skip-reasons-reference"></a>

MediaTailor 在日志组`FILLED_AVAIL`的事件日志消息中记录跳过广告的`MediaTailor/AdDecisionServerInteractions`具体原因。


**完整跳过广告的原因**  

| 跳过原因 | 说明 | 
| --- | --- | 
| NEW\$1CREATIVE | 该广告尚未进行转码。当 MediaTailor遇到需要在插入之前进行转码的新广告素材时，就会发生这种情况。 | 
| PROFILE\$1NOT\$1FOUND | 与会话配置关联的 MediaConvert 转码配置文件不存在，因此无法准备广告。 | 
| TRANSCODE\$1ERROR | 广告转码流程遇到错误，无法完成。 | 
| TRANSCODE\$1IN\$1PROGRESS | 广告转码仍在进行中，尚未准备好插入。 | 
| INTERNAL\$1ERROR | 处理广告时出现内部 MediaTailor 错误，导致广告无法插入。 | 
| AVAIL\$1DURATION\$1EXCEEDED | 广告无法在广告插播的剩余时间内播放。 | 
| LEFTOVER\$1AVAIL\$1EXCEEDED\$1THRESHOLD | 所有可能已插入的广告的累积持续时间未达到为该会话配置的个性化阈值。 | 
| VAST\$1PARSING\$1ERROR | 来自广告决策服务器的 VAST 响应包含错误或格式错误。 | 
| ADS\$1TIMEOUT | 广告决策服务器未在配置的超时时间内做出响应。 | 
| MEDIA\$1FILE\$1UNAVAILABLE | 无法访问 VAST 响应中指定的广告媒体文件。 | 
| SESSION\$1INITIALIZATION\$1FAILED | 会 MediaTailor 话无法正确初始化，这通常是由于会话变量不正确所致。 | 
| EARLY\$1CUE\$1IN | 由于提示信号较早，广告插播时间比预期的要早，导致广告无法完全插入。 | 
| NO\$1VARIANT\$1MATCH | 广告素材没有与内容流的编码参数（比特率、分辨率、编解码器）相匹配的变体。 | 
| NO\$1MODEL\$1CREATIVE\$1MATCH | 广告素材不符合当前播放配置的预期型号或格式要求。 | 
| REJECTED\$1REPLICA\$1VAST | 由于复制或重复内容检测策略，VAST 响应被拒绝。 | 
| INVALID\$1VAST\$1WRAPPER\$1AD | VAST 包装器广告包含无效或格式错误的包装元素，这些元素会阻碍广告成功插入。 | 
| IMPORT\$1ERROR | 在广告导入过程中出现错误，导致无法处理广告进行插入。 | 
| IMPORT\$1IN\$1PROGRESS | 广告导入流程目前正在进行中，尚未完成。 | 

## 相关资源
<a name="related-resources"></a>

有关解决跳过广告问题的更多信息，请参阅以下相关主题：
+ [MediaTailor ADS 请求的动态广告变量](variables.md)-动态广告变量的综合指南 MediaTailor
+ [预取广告](prefetching-ads.md)-如何实现广告预取以防止与转码相关的跳过
+ [AWS Elemental MediaTailor 使用 Amazon CloudWatch 指标进行监控](monitoring-cloudwatch-metrics.md)- MediaTailor 使用 CloudWatch 指标进行监控
+ [查看 AWS Elemental MediaTailor 日志](monitoring-through-logs.md)-如何查看和分析 MediaTailor日志
+ [对 MediaTailor 事件流问题进行故障排除](troubleshooting-event-flow.md)-了解广告插入事件流程