Protected Audience 관련 디버그 보고

Protected Audience 디버그 보고를 사용하면 광고 기술 개발자가 입찰의 낙찰 또는 실패 시 기기로부터 GET 요청을 받기 위해 원격 URL을 선언할 수 있습니다. 이렇게 하면 다음과 같은 사용 사례가 가능합니다.

  • 입찰 결과의 성공 및 실패에 관한 보고를 수신합니다.
  • 입찰에서 탈락한 이유를 파악합니다. 예를 들어 입찰 또는 점수 스크립트 구현과 관련된 문제인지 아니면 핵심 로직 문제인지 파악합니다.
  • JavaScript 로직을 업데이트할 때 문제를 발견합니다.

이벤트 수준 디버그 보고는 개인 정보 보호 샌드박스 개발자 프리뷰 9에서 테스트할 수 있습니다. 디버그 보고는 광고 ID를 사용할 수 있는 모든 기기에서 지원됩니다.

장기적인 계획은 플랫폼이 비공개 집계 서비스를 사용하여 입찰 결과를 보고할 수 있도록 하는 것입니다. 이렇게 하면 사후 보고를 통해 개별 사용자의 맞춤 잠재고객을 게시자의 앱에 조인할 수 없습니다. 이벤트 수준 보고는 적절한 보고 프레임워크가 출시될 때까지 일시적입니다.

Chrome의 기존 FLEDGE 오리진 트라이얼 제안서의 디버그 보고에 관해 자세히 알아보세요.

사용

디버그 보고는 둘 다 URL 문자열 인수를 사용하는 다음 JavaScript API를 사용하여 구현됩니다.

  • forDebuggingOnly.reportAdAuctionWin(String url)
  • forDebuggingOnly.reportAdAuctionLoss(String url)

다음 예에서는 낙찰가가 포함된 광고 입찰 실패와 내부 변수를 보고합니다. 그러면 이 데이터를 디버깅 목적으로 사용할 수 있습니다.

let someDebuggableVariable = 123;
const url = "https://example.com/reportLoss?winningBid=${winningBid}&someDebuggableVariable=" + someDebuggableVariable;
forDebuggingOnly.reportAdAuctionLoss(url);

${winningBid} 템플릿은 입찰이 완료된 후 실제 값으로 대체됩니다.

판매자는 선택적으로 scoreAds 함수에서 rejectReason을 반환할 수 있습니다.

function scoreAd(ad, bid, auction_config, seller_signals,
                 trusted_scoring_signals, contextual_signal,
                 custom_audience_signal) {
  let score = ...
  return {
    'status': 0,
    'score': score,
    'rejectReason': 'blocked-by-publisher'
  }
}

판매자가 거부 사유를 설정하지 않으면 대신 not-available이 전송됩니다.

URL 변수

디버그 URL에 추가할 수 있는 변수는 Chrome의 변수에 해당합니다. 하지만 ${topLevelWinningBid}${topLevelMadeWinningBid}는 Android에 구성요소 입찰 개념이 없으므로 사용할 수 없습니다.

변수 이름 설명
winningBid 낙찰가입니다.
madeWinningBid 이 맞춤 잠재고객의 구매자가 이 맞춤 잠재고객에 의해 낙찰되었는지 동일한 구매자가 있는 다른 맞춤 잠재고객에 의해 낙찰되었는지 나타내는 불리언 값입니다.
highestScoringOtherBid 판매자의 scoreAd 스크립트에서 두 번째로 높은 점수를 받은 입찰가입니다. 점수와 입찰가는 독립적일 수 있으므로 이는 두 번째로 높은 입찰가가 아닐 수도 있습니다.
madeHighestScoringOtherBid 이 맞춤 잠재고객의 구매자가 이 맞춤 잠재고객에 의해 또는 동일한 구매자가 있는 다른 맞춤 잠재고객에 의해 ${highestScoringOtherBid} 입찰을 했는지 나타내는 불리언 값입니다.
rejectReason 판매자가 설정한 문자열(선택사항)로, 입찰을 거부한 이유를 설명합니다. 다음 값 중 하나일 수 있습니다.

  • not-available
  • invalid-bid
  • bid-below-auction-floor
  • pending-approval-by-exchange
  • disapproved-by-exchange
  • blocked-by-publisher
  • language-exclusions
  • category-exclusions

제약 조건

  • URL 호스트가 등록된 개인 정보 보호 샌드박스 도메인과 일치해야 합니다.
  • URL은 도메인, https:// 접두사, 대체 입찰 데이터를 포함하여 4,096자(영문 기준) 이하여야 합니다.
  • 향후 출시에서는 Wi-Fi에 연결된 경우에만 디버그 핑이 전송됩니다.

기기 내 동작

모바일 환경에서는 메모리와 네트워크 사용을 보호하는 것이 핵심 우선순위입니다. 따라서 디버그 보고서가 일괄 처리됩니다.

다음 시스템 속성은 배치 속도와 크기를 제어하며 이는 개발을 위해 더 낮은 값으로 조정될 수 있습니다.

  • fledge_event_level_debug_reporting_batching_rate
  • fledge_event_level_debug_reporting_batch_size

디버그 보고서의 예상 지연 시간은 입찰이 완료된 후 15~60분입니다.

디버그 보고서의 완전성을 확실하게 보장하지는 않습니다. 서버 호출이 전송되기 전에 기기가 재부팅되거나 광고 서비스 프로세스가 비정상 종료되면 이러한 이벤트가 삭제됩니다.

각 광고 기술에는 입찰당 등록된 디버그 URL이 최대 75개로 제한됩니다. 이 제한에 도달한 후에 등록된 URL은 자동으로 삭제됩니다.

마지막으로, 사용자가 AdId를 사용 중지한 경우 디버그 보고서가 전송됩니다. 개발자 프리뷰 9에서는 구현되지 않지만 향후 버전에서는 구현될 예정입니다.

광고 기술 서버 동작

광고 기술 서버에는 디버그 보고를 위해 다음과 같은 동작이 있어야 합니다.

  • 기기는 forDebuggingOnly.* API를 사용하여 지정된 서버로 GET 요청을 보냅니다.
  • 각 요청은 단일 이벤트 수준 디버그 보고서, 즉 단일 광고 입찰 낙찰 또는 입찰 실패를 나타냅니다.
  • 각 요청에는 본문이 없습니다. 모든 데이터는 쿼리 매개변수에 있습니다.
  • 응답 페이로드가 크면 성능과 데이터 사용량에 부정적인 영향을 줄 수 있으므로 무시됩니다.