Профилирование аукциона защищенной аудитории,Профилирование аукциона защищенной аудитории,Профилирование аукциона защищенной аудитории

Аукционы с защищенной аудиторией можно анализировать ( визуально или с помощью SQL-запросов) с помощью Perfetto . Специалисты по рекламным технологиям могут использовать профилирование с помощью Perfetto для измерения эффективности аукционов с защищенной аудиторией, включая:

  • Время работы процессора скрипта для торгов и оценки
  • Задержка HTTP-запросов, например, запросов типа ключ/значение.
  • Влияние холодного кэша на производительность по сравнению с горячим кэшем
  • Больше или меньше пользовательских аудиторий
  • Большие и меньшие наборы сигналов
  • Использование разных скриптов логики назначения ставок для каждой пользовательской аудитории по сравнению с использованием одного и того же скрипта для всех ставок.

Настраивать

  1. Клонируйте репозитории Perfetto и Privacy Sandbox.

    git clone https://android.googlesource.com/platform/external/perfetto
    git clone https://github.com/android/privacy-sandbox-samples
  2. В Android Studio откройте пример приложения Protected Audience из каталога privacy-sandbox-samples/Fledge/FledgeKotlin .

  3. Соберите и установите демонстрационное приложение на ваше тестовое устройство или эмулятор .

Проведите аукцион и получите трассировку Perfetto.

  1. Настройте и разверните тестовые HTTPS-конечные точки . Запишите URL-адреса размещенных конечных точек, поскольку они необходимы для работы демонстрационного приложения Protected Audience.
  2. Запустите демонстрационное приложение, указав тестовый URL-адрес конечной точки. Замените <test-endpoint-url> на URL-адрес размещенной конечной точки, который вы записали на предыдущем шаге.

    adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \
      -e baseUrl "<test-endpoint-url>"
  3. Включите параметр "Обувь CA", чтобы убедиться, что активна хотя бы одна пользовательская аудитория.

    Функция Shoes CA была включена в демонстрационном приложении.
    Демонстрационное приложение для защищенной аудитории.
  4. Запишите трассировку, используя файл trace_config.textproto из репозитория Privacy Sandbox DevTools на GitHub:

    ./perfetto/tools/record_android_trace \
      -c path/to/trace_config.textproto
  5. Нажмите кнопку «Выполнить выбор объявления» и дождитесь результатов аукциона. После завершения аукциона на экране отобразится сообщение типа «Будет показано объявление с http://example.com/bidding/render_shoes ».

  6. В терминале завершите программу record_android_trace , нажав (CTRL+C). В браузере откроется пользовательский интерфейс Perfetto с загруженными данными трассировки.

Визуально изучите трассировки в Perfetto.

  1. Найдите "RunOnDeviceAdSelection" с помощью адресной строки в верхней части интерфейса. Нажмите Enter , чтобы завершить поиск и отобразить результаты:

    Perfetto UI анализирует аукцион защищенной аудитории. Видны такие дорожки, как RunOnDeviceAdSelection и RunBidding.
    Аукцион с ограниченным кругом покупателей в Perfetto.
  2. Щёлкните по трассировке, чтобы просмотреть её. Здесь доступны такие подробности, как задержка выполнения.

    Пользовательский интерфейс 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-кода.

  1. В Perfetto перейдите к разделу "Запрос (SQL)" в левой панели навигации.
  2. Введите следующий запрос:

    SELECT AVG(dur)
    FROM slice
    WHERE slice.name GLOB 'FetchPayload';
    
  3. Выполните запрос и просмотрите результаты.

    Результаты SQL-запроса. Средняя задержка составляет 17693688 наносекунд.
    Результаты SQL-запроса определяются за наносекунды.