حراج های مخاطب محافظت شده را می توان تجزیه و تحلیل کرد ( به صورت بصری یا با پرس و جوی SQL با Perfetto . فناوری های تبلیغاتی می توانند از نمایه سازی با Perfetto برای اندازه گیری عملکرد حراج های مخاطب محافظت شده استفاده کنند، از جمله:
- مناقصه و امتیازدهی اسکریپت زمان CPU
- تأخیر درخواست های HTTP مانند سرویس کلید/مقدار
- تاثیر عملکرد حافظه نهان سرد در مقابل کش داغ
- بیشتر در مقابل مخاطبان سفارشی کمتر
- مجموعه سیگنال های بزرگتر در مقابل کوچکتر
- اسکریپتهای منطق پیشنهادی متفاوت برای هر مخاطب سفارشی در مقایسه با استفاده از یک اسکریپت برای همه مناقصهها
راه اندازی
مخازن Perfetto و Privacy Sandbox را شبیه سازی کنید.
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 Trace بگیرید
- نقاط پایانی HTTPS آزمایشی را تنظیم و استقرار کنید . نشانی اینترنتی نقاط پایانی میزبانی شده را یادداشت کنید زیرا برای عملکرد برنامه نمایشی مخاطب محافظت شده لازم است.
برنامه آزمایشی را با نشانی اینترنتی نقطه پایانی آزمایشی مشخص شده راه اندازی کنید.
<test-endpoint-url>
را با URL نقطه پایانی میزبانی شده که در مرحله قبل ثبت کرده اید جایگزین کنید.adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \ -e baseUrl "<test-endpoint-url>"
برای اطمینان از وجود حداقل ۱ مخاطب سفارشی فعال، «Shoes CA» را تغییر دهید.
برنامه نمایشی مخاطبان محافظت شده. ردیابی را با استفاده از فایل trace_config.textproto از مخزن Privacy Sandbox DevTools GitHub ضبط کنید:
./perfetto/tools/record_android_trace \ -c path/to/trace_config.textproto
بر روی دکمه "Run Ad Selection" ضربه بزنید و منتظر نتایج حراج باشید. پس از اتمام حراج، خروجی پیامی مانند "آگهی را از
http://example.com/bidding/render_shoes
نمایش می دهد" نمایش می دهد.در ترمینال خود، برنامه
record_android_trace
را (CTRL+C) خاتمه دهید تا ردیابی به پایان برسد. رابط کاربری Perfetto در مرورگر شما با بارگذاری داده های ردیابی باز می شود.
آثار موجود در Perfetto را بصری کاوش کنید
"RunOnDeviceAdSelection" را با استفاده از نوار آدرس در بالای رابط کاربری جستجو کنید. برای تکمیل جستجو و نمایش نتایج روی Enter کلیک کنید:
حراج مخاطب محافظت شده تک خریدار در Perfetto. برای بررسی روی ردی کلیک کنید. جزئیاتی مانند تأخیر اجرا در اینجا موجود است.
بازرسی یک قطعه ردیابی
بخشهای ردیابی خاص مخاطب محافظت شده
حراج مخاطب محافظت شده یک فرآیند پیچیده است و بخش های مختلفی توسط Perfetto Trace ثبت شده است. این جدول آنچه را که هر بخش ردیابی نشان می دهد، مستند می کند.
زمان | بخش | توضیحات | فرکانس |
---|---|---|---|
پیش حراج | RunOnDeviceAdSelection | حراج پایان به انتها | در هر حراج |
مناقصه (سمت خرید) | FilterContextualAds | نصب برنامه و فیلتر فرکانس در تبلیغات متنی را انجام دهید | در هر حراج |
GetBuyersCustomAudience | بارگیری مخاطبان سفارشی خریدار از پایگاه داده | به ازای هر خریدار | |
FilterCustomAudiences | نصب برنامه و فیلتر فرکانس را روی مخاطبان سفارشی انجام دهید | در هر حراج | |
GetTrustedBiddingSignals | بارگیری سیگنال های پیشنهاد خریدار | به ازای هر خریدار | |
RunBiddingPerCustomAudience | مناقصه آگهی برای یک مخاطب خاص | به ازای هر مخاطب سفارشی | |
GetBuyerDecisionLogic | جاوا اسکریپت خریدار را در صورت ذخیره در حافظه پنهان، از شبکه یا پایگاه داده بارگیری کنید | به ازای هر مخاطب سفارشی | |
RunBidding | اجرای جاوا اسکریپت برای خریدار | به ازای هر خریدار | |
GenerateBids | اجرای جاوا اسکریپت برای مخاطبان سفارشی | به ازای هر مخاطب سفارشی | |
امتیاز دهی (سمت فروش) | GetTrustedScoringSignals | سیگنال های امتیازدهی فروشنده را بارگیری کنید | به ازای هر فروشنده |
RunAdScoring | اجرای جاوا اسکریپت برای امتیازدهی | در هر حراج | |
ScoreAd | اجرای جاوا اسکریپت برای یک تبلیغ | در هر آگهی | |
GetAdSelectionLogic | منطق انتخاب آگهی فروشنده را بارگیری کنید | در هر حراج | |
RunAdOutcomeSelection | فیلتر نهایی | در هر حراج | |
پست حراج | PersistOnDeviceAdSelection | نتیجه حراج را در پایگاه داده بنویسید | در هر حراج |
پرس و جو برای تاخیر اجرا متوسط
Perfetto می تواند از پرس و جوهای SQL برای اندازه گیری دقیق آنچه در داخل یک ردیابی خاص اتفاق می افتد استفاده کند.
این بخش نحوه اندازه گیری متوسط تأخیر اجرا برای اجرای جاوا اسکریپت را نشان می دهد.
- در Perfetto، به "Query (SQL)" در صفحه ناوبری سمت چپ بروید.
پرس و جو زیر را وارد کنید:
SELECT AVG(dur) FROM slice WHERE slice.name GLOB 'FetchPayload';
پرس و جو را اجرا کنید و نتایج را بررسی کنید.
نتایج جستجوی SQL در نانوثانیه است.