Аукционы с защищенной аудиторией можно анализировать ( визуально или с помощью SQL-запросов) с помощью Perfetto . Специалисты по рекламным технологиям могут использовать профилирование с помощью Perfetto для измерения эффективности аукционов с защищенной аудиторией, включая:
- Время работы процессора скрипта для торгов и оценки
- Задержка HTTP-запросов, например, запросов типа ключ/значение.
- Влияние холодного кэша на производительность по сравнению с горячим кэшем
- Больше или меньше пользовательских аудиторий
- Большие и меньшие наборы сигналов
- Использование разных скриптов логики назначения ставок для каждой пользовательской аудитории по сравнению с использованием одного и того же скрипта для всех ставок.
Настраивать
Клонируйте репозитории Perfetto и Privacy Sandbox.
git clone https://android.googlesource.com/platform/external/perfettogit 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", чтобы убедиться, что активна хотя бы одна пользовательская аудитория.

Демонстрационное приложение для защищенной аудитории. Запишите трассировку, используя файл trace_config.textproto из репозитория Privacy Sandbox DevTools на GitHub:
./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. Щёлкните по трассировке, чтобы просмотреть её. Здесь доступны такие подробности, как задержка выполнения.

Проверка сегмента трассировки.
Сегменты отслеживания, специфичные для защищенной аудитории
Аукцион с защищенной аудиторией — сложный процесс, и трассировка 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-запроса определяются за наносекунды.