Aukcje Protected Audience można analizować wizualnie lub za pomocą zapytania SQL w narzędziu Perfetto. Technologie reklamowe mogą używać profilowania za pomocą Perfetto do pomiaru skuteczności aukcji z użyciem Protected Audience, w tym:
- Czas pracy procesora skryptu ustalania stawek i oceniania
- Czas oczekiwania na żądania HTTP, np. w przypadku usługi klucz/wartość
- Wpływ na wydajność w przypadku zimnej i gorącej pamięci podręcznej
- Więcej czy mniej niestandardowych odbiorców
- Większe i mniejsze zestawy sygnałów
- Różne skrypty logiki ustalania stawek w przypadku poszczególnych odbiorców niestandardowych w porównaniu z używaniem tego samego skryptu do wszystkich rodzajów ustalania stawek.
Konfiguracja
Sklonuj repozytoria Perfetto i Piaskownicy prywatności.
git clone https://android.googlesource.com/platform/external/perfetto
git clone https://github.com/android/privacy-sandbox-samples
W Android Studio otwórz przykładową aplikację Protected Audience z katalogu
privacy-sandbox-samples/Fledge/FledgeKotlin
.Skompiluj i zainstaluj przykładową aplikację na urządzeniu testowym lub emulatorze.
Przeprowadź aukcję i utwórz ślad Perfetto
- Skonfiguruj i wdróż testowe punkty końcowe HTTPS. Zanotuj adresy URL hostowanych punktów końcowych, ponieważ są one wymagane do działania aplikacji demonstracyjnej Protected Audience.
Uruchom aplikację demonstracyjną z określonym testowym adresem URL punktu końcowego. Zastąp
<test-endpoint-url>
adresem URL hostowanego punktu końcowego zapisanym w poprzednim kroku.adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \ -e baseUrl "<test-endpoint-url>"
Przełącz opcję „Shoes CA”, aby sprawdzić, czy jest aktywna co najmniej 1 lista odbiorców niestandardowych.
Aplikacja demonstracyjna Protected Audience Zarejestruj ślad za pomocą pliku trace_config.textproto z repozytorium GitHub Narzędzi deweloperskich Piaskownicy prywatności:
./perfetto/tools/record_android_trace \ -c path/to/trace_config.textproto
Kliknij przycisk „Uruchom wybór reklamy” i poczekaj na wyniki aukcji. Po zakończeniu aukcji w danych wyjściowych pojawi się komunikat, np. „Wyświetliłby reklamę z
http://example.com/bidding/render_shoes
”.W terminalu zatrzymaj (CTRL+C) program
record_android_trace
, aby zakończyć śledzenie. W przeglądarce otworzy się interfejs Perfetto z załadowanymi danymi śledzenia.
Wizualne przeglądanie śladów w Perfetto
Wyszukaj „RunOnDeviceAdSelection” za pomocą paska adresu u góry interfejsu. Kliknij Enter, aby dokończyć wyszukiwanie i wyświetlić wyniki:
Aukcja z Protected Audience API dla jednego kupującego w Perfetto. Kliknij log czasu, aby go sprawdzić. Szczegóły, takie jak opóźnienie wykonania, znajdziesz tutaj.
Sprawdzanie segmentu logu czasu
Segmenty śledzenia dotyczące Protected Audience
Aukcja z użyciem Protected Audience API to złożony proces, a ślad Perfetto rejestruje wiele różnych segmentów. W tej tabeli opisano, co reprezentuje każdy segment śladu.
Godzina | Segment | Opis | Częstotliwość |
---|---|---|---|
Przed aukcją | RunOnDeviceAdSelection |
Kompleksowa obsługa aukcji | Za aukcję |
Określanie stawek (po stronie kupującego) | FilterContextualAds |
Przeprowadzanie filtrowania reklam kontekstowych pod kątem instalacji aplikacji i ograniczenia liczby wyświetleń | Za aukcję |
GetBuyersCustomAudience |
Wczytywanie listy niestandardowych odbiorców kupującego z bazy danych | na kupującego, | |
FilterCustomAudiences |
przeprowadzanie filtrowania instalacji aplikacji i ograniczenia liczby wyświetleń na listach odbiorców niestandardowych, | Za aukcję | |
GetTrustedBiddingSignals |
Wczytywanie sygnałów określania stawek kupującego | na kupującego, | |
RunBiddingPerCustomAudience |
Ustalanie stawek za reklamy w przypadku pojedynczej listy odbiorców niestandardowych | Na niestandardową grupę odbiorców | |
GetBuyerDecisionLogic |
Wczytywanie kodu JavaScript kupującego z sieci lub bazy danych (jeśli jest w pamięci podręcznej). | Na niestandardową grupę odbiorców | |
RunBidding |
Wykonanie JavaScriptu w przypadku kupującego | na kupującego, | |
GenerateBids |
Wykonanie JavaScriptu w przypadku odbiorców niestandardowych | Na niestandardową grupę odbiorców | |
Ocena (sprzedaż przestrzeni reklamowej) | GetTrustedScoringSignals |
Wczytywanie sygnałów oceny sprzedawcy | Według sprzedawcy |
RunAdScoring |
Wykonanie JavaScriptu na potrzeby oceny | Za aukcję | |
ScoreAd |
Wykonanie JavaScriptu w przypadku reklamy | na reklamę, | |
GetAdSelectionLogic |
Wczytywanie logiki wyboru reklam sprzedawcy | Za aukcję | |
RunAdOutcomeSelection |
Filtrowanie końcowe | Za aukcję | |
Po aukcji | PersistOnDeviceAdSelection |
Zapisywanie wyniku aukcji w bazie danych | Za aukcję |
Zapytanie o średni czas oczekiwania na wykonanie
Perfetto może używać zapytań SQL, aby uzyskać precyzyjne pomiary tego, co dzieje się w danym śladzie.
W tej sekcji znajdziesz informacje o tym, jak mierzyć średnie opóźnienie wykonywania kodu JavaScript.
- W Perfetto w panelu nawigacyjnym po lewej stronie kliknij „Query (SQL)” (Zapytanie (SQL)).
Wpisz to zapytanie:
SELECT AVG(dur) FROM slice WHERE slice.name GLOB 'FetchPayload';
Uruchom zapytanie i sprawdź wyniki.
Wyniki zapytania SQL w nanosekundach.