الملف الشخصي لمزاد Protected Audience

يمكن تحليل مزادات Protected Audience (إما بصريًا أو باستخدام طلب بحث بلغة الاستعلامات البنيوية (SQL) مع Perfetto. يمكن لخبراء تكنولوجيا الإعلان استخدام إنشاء الملفات الشخصية مع Perfetto لقياس أداء مزادات Protected Audience، بما في ذلك:

  • وقت وحدة المعالجة المركزية لبرنامج عروض الأسعار والتقييم
  • وقت استجابة طلبات 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

  1. إعداد نقاط نهاية HTTPS التجريبية ونشرها دوِّن عنوان URL لنقاط النهاية المستضافة لأنّها مطلوبة لكي يعمل تطبيق العرض التوضيحي الخاص بميزة Protected Audience.
  2. شغِّل التطبيق التجريبي مع تحديد عنوان URL لنقطة نهاية اختبارية. استبدِل <test-endpoint-url> بعنوان URL لنقطة نهاية مستضافة سجّلته في الخطوة السابقة.

    adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \
      -e baseUrl "<test-endpoint-url>"
  3. بدِّل مفتاح "أحذية كندا" للتأكّد من أنّ هناك شريحة جمهور مخصّصة واحدة على الأقل نشطة.

    تم تفعيل ميزة &quot;الاستماع إلى الأغاني&quot; في التطبيق التجريبي.
    تطبيق العرض التوضيحي لواجهة برمجة التطبيقات Protected Audience API
  4. سجِّل عملية تتبُّع باستخدام ملف trace_config.textproto من مستودع Privacy Sandbox DevTools GitHub:

    ./perfetto/tools/record_android_trace \
      -c path/to/trace_config.textproto
  5. انقر على الزر "تنفيذ عملية اختيار الإعلان" وانتظِر نتائج المزاد. عند اكتمال المزاد، يعرض الناتج رسالة مثل "سيتم عرض إعلان من http://example.com/bidding/render_shoes".

  6. في الوحدة الطرفية، أوقِف برنامج record_android_trace (CTRL+C) لإنهاء التتبُّع. سيتم فتح واجهة مستخدم Perfetto في المتصفّح مع تحميل بيانات التتبُّع.

استكشاف عمليات التتبُّع بشكل مرئي في Perfetto

  1. ابحث عن RunOnDeviceAdSelection باستخدام شريط العناوين في أعلى واجهة المستخدم. انقر على Enter لإكمال البحث وعرض النتائج:

    واجهة مستخدم Perfetto تعرض مزادًا يستخدم Protected Audience API تظهر مسارات، مثل RunOnDeviceAdSelection وRunBidding.
    مزاد Protected Audience API الذي يشارك فيه مشترٍ واحد في Perfetto
  2. انقر على عملية تتبُّع لفحصها. يمكنك الاطّلاع هنا على تفاصيل مثل وقت الاستجابة عند التنفيذ.

    واجهة مستخدم Perfetto تفحص جزءًا من عملية التتبُّع. تظهر تفاصيل وقت الاستجابة.
    فحص جزء من عملية التتبُّع

أقسام التتبُّع الخاصة بـ Protected Audience

إنّ عملية المزاد في Protected Audience هي عملية معقّدة، وهناك العديد من الأقسام المختلفة التي يتم تسجيلها في تتبُّع 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، انتقِل إلى "طلب البحث (SQL)" في جزء التنقّل الأيمن.
  2. أدخِل طلب البحث التالي:

    SELECT AVG(dur)
    FROM slice
    WHERE slice.name GLOB 'FetchPayload';
    
  3. نفِّذ طلب البحث وافحص النتائج.

    نتائج طلب بحث SQL يبلغ متوسط وقت الاستجابة 17693688 نانو ثانية.
    نتائج طلب بحث SQL بالنانو ثانية