Protected Audience açık artırmasını profilleme

Protected Audience açık artırmaları görsel olarak veya Perfetto ile SQL sorgusu kullanılarak analiz edilebilir. Reklam teknolojisi sağlayıcılar, aşağıdakiler de dahil olmak üzere Protected Audience açık artırmalarının performansını ölçmek için Perfetto ile profilleme kullanabilir:

  • Teklif verme ve puanlama komut dosyası CPU süresi
  • Anahtar/değer hizmeti gibi HTTP isteklerinin gecikmesi
  • Soğuk önbellek ve sıcak önbelleğin performans üzerindeki etkisi
  • Daha fazla özel kitleye karşı daha az özel kitle
  • Daha büyük ve daha küçük sinyal grupları
  • Tüm teklifler için aynı komut dosyasını kullanmaya kıyasla, her özel kitle için farklı teklif verme mantığı komut dosyaları

Kurulum

  1. Perfetto ve Özel Korumalı Alan depolarını klonlayın.

    git clone https://android.googlesource.com/platform/external/perfetto
    git clone https://github.com/android/privacy-sandbox-samples
  2. Android Studio'da, Protected Audience örnek uygulamasını privacy-sandbox-samples/Fledge/FledgeKotlin dizininden açın.

  3. Örnek uygulamayı test cihazınızda veya emülatörünüzde oluşturup yükleyin.

Açık artırma çalıştırın ve Perfetto izi alın

  1. Test HTTPS uç noktalarını ayarlayın ve dağıtın. Protected Audience demo uygulamasının çalışması için gerekli olduğundan, barındırılan uç noktaların URL'sini not edin.
  2. Belirtilen bir test uç noktası URL'si ile demo uygulamasını başlatın. <test-endpoint-url> yerine önceki adımda kaydettiğiniz barındırılan uç nokta URL'sini girin.

    adb shell am start -n com.example.adservices.samples.fledge.sampleapp/.MainActivity \
      -e baseUrl "<test-endpoint-url>"
  3. En az 1 özel kitlenin etkin olduğunu doğrulamak için "Shoes CA"yı etkinleştirin.

    Demo uygulamasında Shoes CA&#39;nın etkinleştirilmesi.
    Protected Audience Demo Uygulaması
  4. Özel Korumalı Alan Geliştirici Araçları GitHub deposundaki trace_config.textproto dosyasını kullanarak bir izleme kaydı oluşturun:

    ./perfetto/tools/record_android_trace \
      -c path/to/trace_config.textproto
  5. "Reklam Seçimi Çalıştır" düğmesine dokunun ve açık artırma sonuçlarını bekleyin. Açık artırma tamamlandığında çıkışta "http://example.com/bidding/render_shoes reklamı gösterilecek" gibi bir mesaj gösterilir.

  6. İzlemeyi tamamlamak için terminalinizde record_android_trace programını sonlandırın (CTRL+C). Perfetto kullanıcı arayüzü, izleme verileri yüklenmiş şekilde tarayıcınızda açılır.

Perfetto'da izleri görsel olarak keşfetme

  1. Kullanıcı arayüzünün üst kısmındaki adres çubuğunu kullanarak "RunOnDeviceAdSelection" ifadesini arayın. Aramayı tamamlamak ve sonuçları göstermek için Enter'ı tıklayın:

    Protected Audience açık artırmasına bakan Perfetto kullanıcı arayüzü. RunOnDeviceAdSelection ve RunBidding gibi izler görünür.
    Perfetto'da tek alıcılı Protected Audience açık artırması.
  2. İncelemek istediğiniz izi tıklayın. Yürütme gecikmesi gibi ayrıntıları burada bulabilirsiniz.

    Perfetto kullanıcı arayüzünde bir iz segmenti inceleniyor. Gecikme ayrıntıları görünür.
    İzleme segmentini inceleme.

Protected Audience'a özgü izleme segmentleri

Protected Audience açık artırması karmaşık bir süreçtir ve Perfetto izi tarafından yakalanan birçok farklı segment vardır. Bu tabloda, her izleme segmentinin neyi temsil ettiği açıklanmaktadır.

Saat Segment Açıklama Sıklık
Açık artırma öncesi RunOnDeviceAdSelection Açık artırma uçtan uca Açık artırma başına
Teklif verme (satın alma tarafı) FilterContextualAds Bağlamsal reklamlarda uygulama yükleme ve sıklık sınırı filtreleme işlemlerini gerçekleştirme Açık artırma başına
GetBuyersCustomAudience Alıcının özel kitlesini veritabanından yükleme Alıcı başına
FilterCustomAudiences Özel kitlelerde uygulama yükleme ve sıklık sınırı filtreleme gerçekleştirme Açık artırma başına
GetTrustedBiddingSignals Alıcının teklif verme sinyallerini yükleme Alıcı başına
RunBiddingPerCustomAudience Tek bir özel kitle için reklam teklifi verme Özel kitle başına
GetBuyerDecisionLogic Alıcının JavaScript'ini ağdan veya önbelleğe alınmışsa veritabanından yükleme Özel kitle başına
RunBidding Bir alıcı için JavaScript yürütme Alıcı başına
GenerateBids Özel kitle için JavaScript yürütme Özel kitle başına
Puanlama (satıcı tarafı) GetTrustedScoringSignals Satıcının puanlama sinyallerini yükleme Satıcı başına
RunAdScoring Puanlama için JavaScript yürütme Açık artırma başına
ScoreAd Bir reklam için JavaScript yürütme Reklam başına
GetAdSelectionLogic Satıcının reklam seçimi mantığını yükleme Açık artırma başına
RunAdOutcomeSelection Son filtreleme Açık artırma başına
Açık artırma sonrası PersistOnDeviceAdSelection Açık artırma sonucunu veritabanına yazma Açık artırma başına

Ortalama yürütme gecikmesi için sorgu

Perfetto, belirli bir izde neler olduğunu hassas bir şekilde ölçmek için SQL sorgularını kullanabilir.

Bu bölümde, JavaScript yürütme için ortalama yürütme gecikmesinin nasıl ölçüleceği açıklanmaktadır.

  1. Perfetto'da soldaki gezinme bölmesinde "Query (SQL)" [Sorgu (SQL)] bölümüne gidin.
  2. Aşağıdaki sorguyu girin:

    SELECT AVG(dur)
    FROM slice
    WHERE slice.name GLOB 'FetchPayload';
    
  3. Sorguyu çalıştırın ve sonuçları inceleyin.

    SQL sorgu sonuçları. Ortalama gecikme 17.693.688 nanosaniyedir.
    SQL sorgusu sonuçları nanosaniyeler içinde.