디버그 로그 생성 - AWS Elemental MediaTailor

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

디버그 로그 생성

디버그 로그를 사용하여 MediaTailor 광고 삽입 재생 세션 문제를 해결하십시오. 디버그 로그를 생성하려면 플레이어의 요청에 따라 디버깅할 로그 모드를 설정합니다. MediaTailor 서버측 보고의 경우 재생 요청에서 로그 모드를 설정합니다. 클라이언트측 보고의 경우 세션 초기화 요청에서 로그 모드를 설정합니다.

로그 모드가 디버그로 설정된 경우 디버그 로그 데이터를 MediaTailor Logs에 기록합니다. CloudWatch 디버그 로그는 다음 이벤트에 대한 정보를 제공합니다. 디버그 로그에서 생성된 전체 데이터 목록은 디버그 로그 필드를 참조하십시오.

  • Origin 상호 작용 — MediaTailor 의 원본 서버와의 상호 작용에 대한 세부 정보입니다. 원본 매니페스트 응답, 매니페스트 유형, 원본 URL을 예로 들 수 있습니다.

  • 생성된 매니페스트 — 의 재생 세션 응답에 대한 세부 정보입니다. MediaTailor 생성되는 MediaTailor 매니페스트를 예로 들 수 있습니다.

  • 세션 초기화 — 세션 ID와 같은 세션 초기화 세부 정보.

필수 조건

로그 모드를 디버깅으로 설정하려면 먼저 로그를 전송할 MediaTailor 권한을 부여해야 합니다 (아직 부여하지 않았다면). CloudWatch 액세스 CloudWatch 권한을 부여했으면 디버그 로그 모드를 활성화할 준비가 된 것입니다. MediaTailor 액세스 MediaTailor 권한을 부여하는 방법에 대한 자세한 내용은 Amazon에 대한 권한 설정을 CloudWatch 참조하십시오 CloudWatch.

디버깅할 로그 모드를 설정하는 방법

이 섹션에서는 서버측 보고 및 클라이언트측 보고를 위해 로그 모드를 디버깅으로 설정하는 방법을 설명합니다.

서버측 보고

서버측 보고의 경우 HLS 또는 DASH 엔드포인트에 대한 플레이어의 GET HTTP 재생 요청에 ?aws.logMode=DEBUG 쿼리 파라미터와 값을 포함하세요. MediaTailor 서버측 보고에 대한 일반 정보는 서버측 보고를 참조하십시오.

중요

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 섹션을 참조하세요.

클라이언트측 보고

클라이언트측 보고의 경우 클라이언트의 POST HTTP 세션 초기화 요청 본문에 있는 logMode 키와 DEBUG 값을 /v1/session 엔드포인트에 포함시키십시오. MediaTailor 클라이언트측 보고에 대한 일반 정보는 클라이언트측 보고를 참조하십시오.

중요

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 디버그 로그가 기록되지 않습니다. 세션의 로그에 CloudWatch 디버그 로그가 표시되지 않는 경우 이 한도에 도달했을 수 있습니다. 한도에 도달했는지 확인하려면 을 참조하십시오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 특정 HTTP 요청 대상 ID입니다. MediaTailor
responseBody 응답 본문 양식의 매니페스트. MediaTailor 이것은 원시 오리진 매니페스트이거나 에서 생성된 매니페스트입니다. MediaTailor
sessionId 재생 세션 ID.
sessionType 재생 세션 유형.

값: HLS, DASH

디버그 로그 읽기

MediaTailor Amazon Logs에 디버그 로그를 CloudWatch 기록합니다. 일반적인 CloudWatch 로그 요금이 적용됩니다. CloudWatch Insights를 사용하여 디버그 로그를 읽어보세요. CloudWatch Logs Insights를 사용하는 방법에 대한 자세한 내용은 AWS Logs 사용 설명서의 CloudWatch Logs Insights를 사용한 CloudWatch 로그 데이터 분석을 참조하십시오.

참고

디버그 로그가 표시되는 데 몇 분 정도 걸릴 수 있습니다. 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"