يمكن تحليل مزادات Protected Audience (إما بصريًا أو باستخدام طلب لغة الاستعلامات البنيوية (SQL) مع Perfetto). يمكن أن تستخدِم تكنولوجيات الإعلان ميزة وضع الملف الشخصي مع Perfetto لقياس أداء مزادات "شرائح الجمهور المحمية"، بما في ذلك:
- وقت وحدة المعالجة المركزية لنصّ عروض الأسعار ووضع النقاط
- وقت استجابة طلبات HTTP، مثل خدمة إدارة مفاتيح التشفير
- تأثير الأداء في ذاكرة التخزين المؤقت غير النشطة مقارنةً بذاكرة التخزين المؤقت النشطة
- استخدام عدد أكبر من شرائح الجمهور المخصّصة أو عدد أقل منها
- مجموعات الإشارات الأكبر حجمًا مقارنةً بالمجموعات الأصغر
- نصوص برمجية مختلفة لمنطق عروض الأسعار لكل شريحة جمهور مخصّصة مقارنةً باستخدام النص البرمجي نفسه لجميع عروض الأسعار
ضبط إعدادات الجهاز
استنسِخ مستودعَي Perfetto و"مبادرة حماية الخصوصية".
git clone https://android.googlesource.com/platform/external/perfetto
git clone https://github.com/android/privacy-sandbox-samples
في Android Studio، افتح تطبيق Protected Audience Sample من الدليل
privacy-sandbox-samples/Fledge/FledgeKotlin
.أنشئ نموذج التطبيق وثبِّته على الجهاز الاختباري أو المحاكي.
إجراء مزاد وإجراء عملية تتبُّع في Perfetto
- إعداد نقاط نهاية HTTPS الاختبارية ونشرها دوِّن عنوان URL لنقاط النهاية المُستضافة، لأنّها مطلوبة لكي يعمل تطبيق Protected Audience التجريبي.
ابدأ التطبيق التجريبي باستخدام عنوان URL لنقطة نهاية اختبارية محدّد. استبدِل
<test-endpoint-url>
بعنوان URL لنقطة نهاية مستضافة سجّلته في الخطوة السابقة.adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \ -e baseUrl "<test-endpoint-url>"
فعِّل "شريحة الجمهور المخصّصة للأحذية" للتأكّد من أنّ هناك شريحة جمهور مخصّصة واحدة على الأقل نشطة.
تطبيق Protected Audience Demo سجِّل عملية تتبُّع باستخدام ملف trace_config.textproto من مستودع GitHub الخاص بأدوات تطوير "مبادرة حماية الخصوصية":
./perfetto/tools/record_android_trace \ -c path/to/trace_config.textproto
انقر على الزر "تنفيذ اختيار الإعلان" وانتظِر نتائج المزاد. عند اكتمال المزاد، يعرض الإخراج رسالة مثل "سيتم عرض إعلان من
http://example.com/bidding/render_shoes
".في المحطة الطرفية، أوقِف (CTRL+C) برنامج
record_android_trace
ل إنهاء عملية التتبّع. يتم فتح واجهة مستخدم Perfetto في المتصفّح مع تحميل بيانات التتبّع.
استكشاف عمليات التتبُّع مرئيةً في Perfetto
ابحث عن RunOnDeviceAdSelection باستخدام شريط العناوين في أعلى واجهة المستخدم. انقر على Enter لإكمال عملية البحث وعرض النتائج:
مزاد Protected Audience الخاص بحساب مشتري واحد في Perfetto انقر على إحدى عمليات التتبّع لفحصها. تتوفّر هنا تفاصيل مثل وقت استجابة التنفيذ.
فحص جزء من التتبّع
أقسام التتبّع الخاصة بالجمهور المحمي
مزاد 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.
- في Perfetto، انتقِل إلى "طلب البحث (SQL)" في جزء التنقّل الأيمن.
أدخِل طلب البحث التالي:
SELECT AVG(dur) FROM slice WHERE slice.name GLOB 'FetchPayload';
نفِّذ طلب البحث وتحقّق من النتائج.
تظهر نتائج طلبات البحث في لغة الاستعلامات البنيوية (SQL) بالنانوثواني.