مزایدههای مخاطبان محافظتشده را میتوان (به صورت بصری یا با استفاده از کوئری SQL با Perfetto ) تجزیه و تحلیل کرد. تکنسینهای تبلیغات میتوانند از پروفایلسازی با Perfetto برای اندازهگیری عملکرد مزایدههای مخاطبان محافظتشده استفاده کنند، از جمله:
- زمان CPU اسکریپت پیشنهاد قیمت و امتیازدهی
- تأخیر درخواستهای HTTP مانند سرویس کلید/مقدار
- تأثیر عملکرد حافظه پنهان سرد در مقابل حافظه پنهان گرم
- مخاطبان سفارشی بیشتر در مقابل مخاطبان سفارشی کمتر
- مجموعههای سیگنال بزرگتر در مقابل مجموعههای سیگنال کوچکتر
- اسکریپتهای منطق مناقصه متفاوت برای هر مخاطب سفارشی در مقایسه با استفاده از یک اسکریپت برای همه مناقصهها
راهاندازی
مخازن Perfetto و Privacy Sandbox را کلون کنید.
git clone https://android.googlesource.com/platform/external/perfettogit clone https://github.com/android/privacy-sandbox-samplesدر اندروید استودیو، برنامه نمونه 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>"برای تأیید اینکه حداقل ۱ مخاطب سفارشی فعال است، گزینه «کفشهای دارای مجوز» را فعال یا غیرفعال کنید.

برنامه آزمایشی مخاطبان محافظتشده. با استفاده از فایل trace_config.textproto از مخزن GitHub مربوط به Privacy Sandbox DevTools، ردیابی را ثبت کنید:
./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 کلیک کنید:

حراج مخاطبان محافظتشده تکخریدار در پرفتو. برای بررسی یک مسیر، روی آن کلیک کنید. جزئیاتی مانند تأخیر اجرا در اینجا موجود است.

بررسی یک بخش ردیابی.
بخشهای ردیابی محافظتشده مخصوص مخاطبان
حراج مخاطب محافظتشده فرآیندی پیچیده است و بخشهای مختلف زیادی توسط ردیابی Perfetto ثبت میشوند. این جدول نشان میدهد که هر بخش ردیابی نشان دهنده چیست.
| زمان | بخش | توضیحات | فرکانس |
|---|---|---|---|
| پیش حراج | RunOnDeviceAdSelection | حراج از ابتدا تا انتها | در هر حراج |
| پیشنهاد قیمت (سمت خرید) | FilterContextualAds | فیلتر کردن نصب برنامه و محدودیت فرکانس را روی تبلیغات متنی انجام دهید | در هر حراج |
GetBuyersCustomAudience | بارگذاری مخاطبان سفارشی خریدار از پایگاه داده | به ازای هر خریدار | |
FilterCustomAudiences | انجام فیلترینگ نصب برنامه و محدودیت فرکانس برای مخاطبان سفارشی | در هر حراج | |
GetTrustedBiddingSignals | سیگنالهای پیشنهاد قیمت خریدار را بارگذاری کنید | به ازای هر خریدار | |
RunBiddingPerCustomAudience | پیشنهاد قیمت تبلیغات برای یک مخاطب سفارشی واحد | به ازای هر مخاطب سفارشی | |
GetBuyerDecisionLogic | بارگذاری جاوا اسکریپت خریدار از شبکه یا پایگاه داده، در صورت ذخیره شدن در حافظه پنهان (cache). | به ازای هر مخاطب سفارشی | |
RunBidding | اجرای جاوا اسکریپت برای یک خریدار | به ازای هر خریدار | |
GenerateBids | اجرای جاوا اسکریپت برای مخاطب سفارشی | به ازای هر مخاطب سفارشی | |
| امتیازدهی (سمت فروش) | GetTrustedScoringSignals | سیگنالهای امتیازدهی فروشنده را بارگذاری کنید | به ازای هر فروشنده |
RunAdScoring | اجرای جاوا اسکریپت برای امتیازدهی | در هر حراج | |
ScoreAd | اجرای جاوا اسکریپت برای یک تبلیغ | به ازای هر تبلیغ | |
GetAdSelectionLogic | منطق انتخاب آگهی فروشنده را بارگذاری کنید | در هر حراج | |
RunAdOutcomeSelection | فیلتر نهایی | در هر حراج | |
| حراج پست | PersistOnDeviceAdSelection | نوشتن نتیجه مزایده در پایگاه داده | در هر حراج |
پرس و جو برای میانگین تأخیر اجرا
Perfetto میتواند از کوئریهای SQL برای اندازهگیری دقیق آنچه در یک ردپای خاص اتفاق میافتد، استفاده کند.
این بخش نحوه اندازهگیری میانگین تأخیر اجرا برای اجرای جاوا اسکریپت را مستند میکند.
- در Perfetto، در پنل ناوبری سمت چپ، به بخش «Query (SQL)» بروید.
عبارت زیر را وارد کنید:
SELECT AVG(dur) FROM slice WHERE slice.name GLOB 'FetchPayload';کوئری را اجرا کنید و نتایج را بررسی کنید.

نتایج پرس و جوی SQL در نانو ثانیه بدست میآید.