אפשר לנתח מכרזים של קהלים מוגנים (באופן ויזואלי או לפי שאילתת SQL באמצעות Perfetto). טכנולוגיות פרסום יכולות להשתמש בפרופיל באמצעות Perfetto כדי למדוד את הביצועים של מכרזים עם Protected Audience, כולל:
- זמן מעבד (CPU) של סקריפט ובידינג
- זמן אחזור של בקשות 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 מתארחת של נקודת קצה (endpoint) שרשמתם בשלב הקודם.adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \ -e baseUrl "<test-endpoint-url>"
יש להחליף את המצב של 'נעליים CA' כדי לוודא שיש לפחות קהל פעיל אחד בהתאמה אישית.
מקליטים מעקב באמצעות הקובץ trace_config.textproto ממאגר DevTools של ארגז החול לפרטיות ב-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 API היא תהליך מורכב, ותרשים פרפטו כולל פלחים שונים ושונים. הטבלה הזו מתעדת מה מייצג כל קטע מעקב.
שעה | פילוח | תיאור | תדר |
---|---|---|---|
לפני המכרז | RunOnDeviceAdSelection |
מכרז מקצה לקצה | לכל מכרז |
בידינג (צד הקונה) | FilterContextualAds |
ביצוע סינון של התקנות אפליקציה ושל מכסת תדירות במודעות לפי הקשר | לכל מכרז |
GetBuyersCustomAudience |
טעינת הקהל בהתאמה אישית של הקונה ממסד נתונים | לכל קונה | |
FilterCustomAudiences |
ביצוע סינון של התקנות אפליקציה ושל מכסת תדירות בקהלים בהתאמה אישית | לכל מכרז | |
GetTrustedBiddingSignals |
טעינת אותות הבידינג של הקונה | לכל קונה | |
RunBiddingPerCustomAudience |
בידינג על מודעות לקהל מותאם אישית אחד | לכל קהל בהתאמה אישית | |
GetBuyerDecisionLogic |
טעינת קוד ה-JavaScript של הקונה מהרשת או ממסד הנתונים, אם הוא נשמר במטמון | לכל קהל בהתאמה אישית | |
RunBidding |
הפעלת JavaScript עבור קונה | לכל קונה | |
GenerateBids |
הפעלת JavaScript עבור קהל מותאם אישית | לכל קהל בהתאמה אישית | |
ניקוד (צד המכירה) | GetTrustedScoringSignals |
טעינת אותות של דירוג העסק | לכל מוכר |
RunAdScoring |
ביצוע JavaScript לדירוג | לכל מכרז | |
ScoreAd |
הפעלת JavaScript עבור מודעה | לכל מודעה | |
GetAdSelectionLogic |
טעינת הלוגיקה של בחירת מודעות של המפיץ | לכל מכרז | |
RunAdOutcomeSelection |
סינון סופי | לכל מכרז | |
מכרז לפרסום | PersistOnDeviceAdSelection |
כתוב את תוצאת המכרז למסד הנתונים | לכל מכרז |
שאילתה לגבי זמן אחזור ממוצע לביצוע
Perfetto יכול להשתמש בשאילתות SQL כדי לקבל מדידה מדויקת של מה שקורה במעקב מסוים.
בקטע הזה מוסבר איך למדוד את זמן האחזור הממוצע לביצוע הפעלת JavaScript.
- ב-Perfetto, עוברים אל 'Query (SQL)' בחלונית הניווט הימנית.
מזינים את השאילתה הבאה:
SELECT AVG(dur) FROM slice WHERE slice.name GLOB 'FetchPayload';
מריצים את השאילתה ובודקים את התוצאות.