Logs emitted from a playback configuration in MediaTailor include information about a variety of activities that happen during the playback session. These activities are identified in the event type of the logs, and many events are logged by default. Because the volume of logs might impact your costs in Amazon CloudWatch, and you might want a different level of detail between sessions, MediaTailor provides controls over which event types are logged. With query parameters at session initialization, you can do the following:
-
Specify the log events that you want to opt in to
-
Enable logging raw responses from the ad decision server (ADS)
To define a customized level of log detail for each session, append the following parameters to your initial server-side or client-side playback session request. Add values to the parameters to represent the events that you want to include or exclude, in a comma-delimited format:
-
aws.adsInteractionLogPublishOptInEventTypes
to receive logs for specific ad decision server (ADS) interactions. -
aws.adsInteractionLogExcludeEventTypes
to stop receiving logs for specific ADS interactions. -
aws.manifestServiceLogExcludeEventTypes
to stop receiving logs for specific manifest service interactions.
Note
You must have debug mode enabled to receive any ManifestService logs. For information about debug log mode, including how to enable it, see Generating debug logs.
For a list of log and event types that MediaTailor emits, see Manifest logs.
If you don't pass through any query parameters for log filtering, MediaTailor writes all logs to your delivery destination.
Example server-side session initialization with log filters
To exclude GENERATED_MANIFEST
and PARSING_ERROR
events
from your manifest logs and MAKING_ADS_REQUEST
from the ADS logs, the
session initialization request would look like this:
GET <mediatailorURL>
/v1/master/<hashed-account-id>
/<origin-id>
/index.m3u8?aws.logMode=DEBUG&aws.manifestServiceLogExcludeEventTypes=GENERATED_MANIFEST,PARSING_ERROR&aws.adsInteractionLogExcludeEventTypes=MAKING_ADS_REQUEST
To enable raw logs from your ADS, include the RAW_ADS_RESPONSE
value for the AdsInteractionPublishOptInEventType
parameter:
GET <mediatailorURL>
/v1/master/<hashed-account-id>
/<origin-id>
/index.m3u8?aws.adsInteractionPublishOptInEventType=RAW_ADS_RESPONSE
Example client-side session initialization with log filters
To exclude log events during client-side session initialization,
include availSuppression
and log-type parameters in your client's POST
request to MediaTailor. For more information about how to construct a client-side
playback session request, see Client-side ad tracking. The following example excludes
CONFIG_SECURITY_ERROR
and PARSING_ERROR
events from
your manifest logs and MAKING_ADS_REQUEST
from the ADS logs.
POST parent.m3u8
{
"adsInteractionLog": {
...
"excludeEventTypes": [
"MAKING_ADS_REQUEST"
]
},
"manifestServiceLog": {
...
"excludeEventTypes": [
"GENERATED_MANIFEST",
"PARSING_ERROR"
]
},
"logMode": "DEBUG"
}
To enable raw logs from your ADS, include the RAW_ADS_RESPONSE
value for the
publishOptInEventTypes
parameter:
POST parent.m3u8
{
"adsInteractionLog": {
"publishOptInEventTypes": ["RAW_ADS_RESPONSE"],
"excludeEventTypes": [
"MAKING_ADS_REQUEST"
]
},
"manifestServiceLog": {
...
"excludeEventTypes": [
"GENERATED_MANIFEST",
"PARSING_ERROR"
]
},
"logMode": "DEBUG"
}