โปรไฟล์การประมูล Protected Audience

คุณสามารถวิเคราะห์การประมูล Protected Audience ได้ (ด้วยภาพหรือ โดยใช้การค้นหา SQL ด้วย Perfetto) เทคโนโลยีโฆษณาสามารถใช้การสร้างโปรไฟล์ ด้วย Perfetto เพื่อวัดประสิทธิภาพของการประมูล Protected Audience ซึ่งรวมถึงสิ่งต่อไปนี้

  • เวลา CPU ของสคริปต์การเสนอราคาและการให้คะแนน
  • เวลาในการตอบสนองของคำขอ HTTP เช่น บริการคีย์/ค่า
  • ผลกระทบต่อประสิทธิภาพของแคชเย็นเทียบกับแคชร้อน
  • กลุ่มเป้าหมายที่กำหนดเองมากหรือน้อย
  • ชุดสัญญาณขนาดใหญ่และขนาดเล็ก
  • สคริปต์ตรรกะการเสนอราคาที่แตกต่างกันต่อกลุ่มเป้าหมายที่กำหนดเองแต่ละกลุ่มเมื่อเทียบกับการใช้ สคริปต์เดียวกันสำหรับการเสนอราคาทั้งหมด

ตั้งค่า

  1. โคลนที่เก็บ Perfetto และ Privacy Sandbox

    git clone https://android.googlesource.com/platform/external/perfetto
    git clone https://github.com/android/privacy-sandbox-samples
  2. ใน Android Studio ให้เปิดแอปตัวอย่าง Protected Audience จากไดเรกทอรี privacy-sandbox-samples/Fledge/FledgeKotlin

  3. สร้างและติดตั้งแอปตัวอย่างในอุปกรณ์ทดสอบหรือโปรแกรมจำลอง

เรียกใช้การประมูลและใช้ Perfetto Trace

  1. ตั้งค่าและทำให้ปลายทาง HTTPS สำหรับทดสอบใช้งานได้ จด URL ของปลายทางที่โฮสต์ไว้ เนื่องจากจำเป็นสำหรับแอปเดโม Protected Audience API เพื่อให้ทำงานได้
  2. เปิดแอปเดโมโดยระบุ URL ปลายทางการทดสอบ แทนที่ <test-endpoint-url> ด้วย URL ของปลายทางที่โฮสต์ซึ่งคุณบันทึกไว้ใน ขั้นตอนก่อนหน้า

    adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \
      -e baseUrl "<test-endpoint-url>"
  3. สลับ "Shoes CA" เพื่อยืนยันว่ามีกลุ่มเป้าหมายที่กำหนดเองที่ใช้งานอยู่อย่างน้อย 1 กลุ่ม

    เปิดใช้ Shoes CA ในแอปเดโม
    แอปเดโม Protected Audience
  4. บันทึกการติดตามโดยใช้ไฟล์ trace_config.textproto จากที่เก็บ GitHub ของเครื่องมือสำหรับนักพัฒนาเว็บ Privacy Sandbox โดยทำดังนี้

    ./perfetto/tools/record_android_trace \
      -c path/to/trace_config.textproto
  5. แตะปุ่ม "เรียกใช้การเลือกโฆษณา" แล้วรอผลการประมูล เมื่อ การประมูลเสร็จสมบูรณ์แล้ว เอาต์พุตจะแสดงข้อความ เช่น "จะแสดง โฆษณาจาก http://example.com/bidding/render_shoes"

  6. ในเทอร์มินัล ให้สิ้นสุด (CTRL+C) โปรแกรม record_android_trace เพื่อ สิ้นสุดการติดตาม UI ของ Perfetto จะเปิดขึ้นในเบราว์เซอร์พร้อมกับข้อมูลการติดตามที่โหลดแล้ว

สำรวจการติดตามด้วยภาพใน Perfetto

  1. ค้นหา "RunOnDeviceAdSelection" โดยใช้แถบที่อยู่ด้านบนของ UI คลิก Enter เพื่อทำการค้นหาให้เสร็จสิ้นและแสดงผลลัพธ์

    UI ของ Perfetto ที่ดูการประมูลที่ใช้ Protected Audience API แทร็ก เช่น RunOnDeviceAdSelection และ RunBidding จะปรากฏให้เห็น
    การประมูลที่ใช้ Protected Audience API แบบผู้ซื้อรายเดียวใน Perfetto
  2. คลิกการติดตามเพื่อตรวจสอบ ดูรายละเอียด เช่น เวลาในการตอบสนองของการดำเนินการ ได้ที่นี่

    UI ของ Perfetto ที่ตรวจสอบกลุ่มการติดตาม รายละเอียดเวลาในการตอบสนองจะปรากฏขึ้น
    การตรวจสอบกลุ่มการติดตาม

กลุ่มการติดตามเฉพาะ Protected Audience

การประมูลที่ใช้ Protected Audience API เป็นกระบวนการที่ซับซ้อนและมีกลุ่มต่างๆ มากมาย ที่บันทึกโดยการติดตาม Perfetto ตารางนี้จะบันทึกสิ่งที่แต่ละส่วนของร่องรอย แสดง

เวลา กลุ่ม คำอธิบาย ความถี่
ก่อนการประมูล RunOnDeviceAdSelection การประมูลแบบครบวงจร ต่อการประมูล
การเสนอราคา (ฝั่งซื้อ) FilterContextualAds กรองการติดตั้งแอปและความถี่สูงสุดในโฆษณาตามบริบท ต่อการประมูล
GetBuyersCustomAudience โหลดกลุ่มเป้าหมายที่กำหนดเองของผู้ซื้อจากฐานข้อมูล ต่อผู้ซื้อ
FilterCustomAudiences กรองการติดตั้งแอปและความถี่สูงสุดในกลุ่มเป้าหมายที่กำหนดเอง ต่อการประมูล
GetTrustedBiddingSignals โหลดสัญญาณการเสนอราคาของผู้ซื้อ ต่อผู้ซื้อ
RunBiddingPerCustomAudience การเสนอราคาโฆษณาสําหรับกลุ่มเป้าหมายที่กําหนดเองกลุ่มเดียว ต่อกลุ่มเป้าหมายที่กำหนดเอง
GetBuyerDecisionLogic โหลด JavaScript ของผู้ซื้อจากเครือข่ายหรือฐานข้อมูล หากแคชไว้ ต่อกลุ่มเป้าหมายที่กำหนดเอง
RunBidding การดำเนินการ JavaScript สำหรับผู้ซื้อ ต่อผู้ซื้อ
GenerateBids การเรียกใช้ JavaScript สำหรับกลุ่มเป้าหมายที่กำหนดเอง ต่อกลุ่มเป้าหมายที่กำหนดเอง
การให้คะแนน (ฝั่งผู้ขาย) GetTrustedScoringSignals โหลดสัญญาณการให้คะแนนของผู้ขาย ต่อผู้ขาย
RunAdScoring การดำเนินการ JavaScript สำหรับการให้คะแนน ต่อการประมูล
ScoreAd การดำเนินการ JavaScript สำหรับโฆษณา ต่อโฆษณา
GetAdSelectionLogic โหลดตรรกะการเลือกโฆษณาของผู้ขาย ต่อการประมูล
RunAdOutcomeSelection การกรองขั้นสุดท้าย ต่อการประมูล
หลังการประมูล PersistOnDeviceAdSelection เขียนผลการประมูลลงในฐานข้อมูล ต่อการประมูล

ค้นหาเวลาในการตอบสนองในการดำเนินการโดยเฉลี่ย

Perfetto สามารถใช้การค้นหา SQL เพื่อวัดสิ่งที่เกิดขึ้นอย่างแม่นยำ ภายในร่องรอยที่เฉพาะเจาะจง

ส่วนนี้จะบันทึกวิธีวัดเวลาในการตอบสนองเฉลี่ยของการดำเนินการสำหรับ การดำเนินการ JavaScript

  1. ใน Perfetto ให้ไปที่ "Query (SQL)" ในแผงการนำทางด้านซ้าย
  2. ป้อนคำค้นหาต่อไปนี้

    SELECT AVG(dur)
    FROM slice
    WHERE slice.name GLOB 'FetchPayload';
    
  3. เรียกใช้คำค้นหาและตรวจสอบผลลัพธ์

    ผลการค้นหา SQL เวลาในการตอบสนองเฉลี่ยคือ 17693688 นาโนวินาที
    ผลลัพธ์การค้นหา SQL ในหน่วยนาโนวินาที