Аукционы Защищенной аудитории можно анализировать ( визуально или с помощью SQL-запроса с помощью Perfetto) . Специалисты по рекламе могут использовать профилирование с помощью Perfetto для измерения эффективности аукционов Защищенной аудитории, в том числе:
- Процессорное время скрипта назначения ставок и оценки
- Задержка HTTP-запросов, таких как служба «ключ-значение».
- Влияние холодного кэша на производительность по сравнению с горячим кэшем
- Больше или меньше индивидуализированных аудиторий
- Большие и меньшие наборы сигналов
- Различные сценарии логики назначения ставок для каждой индивидуально настроенной аудитории по сравнению с использованием одного и того же сценария для всех ставок.
Настраивать
Клонируйте репозитории Perfetto и Privacy Sandbox.
git clone https://android.googlesource.com/platform/external/perfetto
git clone https://github.com/android/privacy-sandbox-samples
В Android Studio откройте образец приложения «Защищенная аудитория» из каталога
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>"
Включите «Обувной центр сертификации», чтобы убедиться, что активна хотя бы одна пользовательская аудитория.
Запишите трассировку, используя файл трассировки_config.textproto из репозитория Privacy Sandbox 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 , чтобы завершить поиск и отобразить результаты:
Щелкните трассировку, чтобы просмотреть ее. Подробности, такие как задержка выполнения, доступны здесь.
Защищенные сегменты трассировки для конкретной аудитории
Аукцион защищенной аудитории — это сложный процесс, и трассировка 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';
Запустите запрос и проверьте результаты.