Аукционы защищенной аудитории можно анализировать ( визуально или с помощью 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 откройте пример приложения 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>"
Включите «Обувь CA», чтобы убедиться, что активна хотя бы 1 пользовательская аудитория.
Демонстрационное приложение Protected Audience. Запишите трассировку, используя файл trace_config.textproto из репозитория Privacy Sandbox DevTools GitHub:
./perfetto/tools/record_android_trace \ -c path/to/trace_config.textproto
Нажмите кнопку «Run Ad Selection» и дождитесь результатов аукциона. После завершения аукциона на выходе отобразится сообщение типа «Would display ad from
http://example.com/bidding/render_shoes
».В вашем терминале завершите (CTRL+C) программу
record_android_trace
, чтобы завершить трассировку. В вашем браузере откроется пользовательский интерфейс Perfetto с загруженными данными трассировки.
Визуально исследуйте следы в Perfetto
Найдите "RunOnDeviceAdSelection" с помощью адресной строки в верхней части пользовательского интерфейса. Нажмите Enter , чтобы завершить поиск и показать результаты:
Аукцион с защищенной аудиторией для одного покупателя в Perfetto. Нажмите на трассировку, чтобы ее изучить. Подробности, такие как задержка выполнения, доступны здесь.
Проверка сегмента трассы.
Защищенные сегменты трассировки, специфичные для аудитории
Аукцион защищенной аудитории — сложный процесс, и существует множество различных сегментов, зафиксированных трассировкой 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';
Запустите запрос и проверьте результаты.
Результаты SQL-запроса составляют наносекунды.