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