Książka kucharska na temat debugowania raportów atrybucji

Część 3 z 3 dotycząca debugowania interfejsu Attribution Reporting API. Znajdź instrukcje korzystania z raportów debugowania.

W tym przewodniku znajdziesz instrukcje korzystania z raportów debugowania w różnych przypadkach użycia opisanych w części 1: Wprowadzenie do raportów debugowania.

Słowniczek

  • Źródło raportowania to źródło, które ustawia źródło i aktywator funkcji Attribution Reporting. Wszystkie raporty generowane przez przeglądarkę są wysyłane do tego źródła. W tych wskazówkach jako przykładowego źródła zgłoszenia używamy https://adtech.example.
  • Raport atrybucji (w skrócie raport) to raport końcowy (na poziomie zdarzenia lub agregowany) zawierający żądane dane pomiarowe.
  • Raport debugowania zawiera dodatkowe dane o raporcie atrybucji albo o źródle lub zdarzeniu reguły. Otrzymanie raportu na temat debugowania nie musi oznaczać, że coś działa nieprawidłowo. Istnieją 2 typy raportów debugowania.
  • Przejściowy raport debugowania to raport debugowania, który wymaga skonfigurowania pliku cookie w celu wygenerowania i wysłania. Jeśli plik cookie nie zostanie skonfigurowany i po wycofaniu plików cookie innych firm, raporty dotyczące debugowania przejściowych będą niedostępne. Wszystkie raporty na temat debugowania opisane w tym przewodniku to raporty na temat debugowania.
  • Raporty na temat pomyślnego debugowania pozwalają śledzić udane wygenerowanie raportu atrybucji. Mają bezpośredni związek z raportem atrybucji. Raporty o udanym debugowaniu są dostępne od wersji Chrome 101 (kwiecień 2022 r.).
  • Szczegółowe raporty debugowania pozwalają śledzić brakujące raporty i ustalać, dlaczego ich brakuje. Wskazują przypadki, w których przeglądarka nie zarejestrowała zdarzenia źródła ani nie wywołała tego zdarzenia (co oznacza, że nie generuje raportu atrybucji), oraz przypadki, gdy z jakiegoś powodu nie można wygenerować lub wysłać raportu atrybucji. Szczegółowe raporty debugowania zawierają pole type, które podaje powód, dla którego zdarzenie źródłowe, zdarzenie reguły lub raport atrybucji nie zostały wygenerowane. Szczegółowe raporty dotyczące debugowania są dostępne w Chrome od wersji 109 (stabilnej wersji od stycznia 2023 r.).
  • Klucze debugowania to unikalne identyfikatory, które możesz ustawić zarówno po stronie źródła, jak i po stronie reguły. Klucze debugowania umożliwiają mapowanie konwersji opartych na plikach cookie i atrybucji. Gdy skonfigurujesz system do generowania raportów debugowania i ustawiania kluczy debugowania, przeglądarka będzie uwzględniać te klucze debugowania we wszystkich raportach atrybucji i raportach debugowania.

Więcej pojęć i kluczowych terminów używanych w naszej dokumentacji znajdziesz w słowniczku Piaskownicy prywatności.

Instrukcja: sprawdzanie integracji w czasie rzeczywistym

  1. Skonfiguruj system tak, aby generował raporty debugowania dotyczące sukcesów. Dowiedz się, jak to zrobić, w części 2: Konfigurowanie raportów debugowania.
  2. Za każdym razem, gdy wdrażasz kod Attribution Reporting, sprawdzaj w czasie rzeczywistym, czy w punkcie końcowym otrzymujesz raporty debugowania o pomyślnym ukończeniu operacji. Jeśli tak, konfiguracja interfejsu Attribution Reporting API działa prawidłowo.
  3. Raporty debugowania dotyczące powodzenia są wysyłane tylko wtedy, gdy nastąpi konwersja. Zamiast tego możesz sprawdzić, czy integracja jest prawidłowo skonfigurowana niezależnie od konwersji, czyli czy źródła są prawidłowo rejestrowane. Aby to osiągnąć, możesz skorzystać z informacji o zarejestrowaniu źródłaszczegółowych raportów debugowania. Dowiedz się, jak je skonfigurować w części 2: Konfigurowanie raportów debugowania.

Instrukcja: analiza utraty danych i rozwiązywanie problemów z integracją

Aby porównać wyniki pomiaru konwersji opartego na plikach cookie z raportami dotyczącymi raportowania atrybucji, użyj kluczy debugowania i zmapuj konwersje z plików cookie z raportami debugowania. Pamiętaj, że raporty debugowania są wysyłane natychmiast do punktu końcowego.

Przegląd

Etapy analizy strat
Etapy analizy utraty

Użyj kluczy debugowania (<source_debug_key, trigger_debug_key>), aby zmapować konwersje z plików cookie na raporty debugowania dotyczące powodzenia. Czy w przypadku każdej konwersji z użyciem plików cookie w momencie konwersji otrzymano odpowiedni raport debugowania o sukcesie?

Jeśli tak: w przypadku wszystkich tych raportów debugowania dotyczących powodzenia możesz później otrzymać raport o atrybucji – z kilkoma wyjątkami. Szczegółowe informacje znajdziesz w scenariuszu raportu debugowania o stanie „Sukces”.

Jeśli nie: oznacza to, że konwersja nie została zarejestrowana w raportowaniu atrybucji. Użyj pary <source_debug_key, trigger_debug_key> (lub klucza debugowania źródła, jeśli klucz debugowania wyzwalacza jest nieobecny), aby mapować konwersje z plików cookie na szczegółowe raporty debugowania. Czy w przypadku każdej z tych konwersji w pewnym momencie (w czasie źródła lub wywołania) otrzymano odpowiedni szczegółowy raport debugowania?

  • Jeśli nie otrzymasz szczegółowego raportu debugowania: może to być spowodowane zachowaniem użytkownika lub problemem z integracją. Szczegółowe informacje znajdziesz w scenariuszu braku raportu o debugowaniu.

  • Jeśli otrzymasz szczegółowy raport debugowania, sprawdź pole type.

    • Jeśli jego wartość type to source-success: oznacza to, że źródło zostało zarejestrowane, ale wyzwalacz nie. Aby zawęzić przyczynę braku raportu debugowania dotyczącego powodzenia, poszukaj odpowiedniego szczegółowego raportu debugowania dowolnego innego typu. Wskaże on problem po stronie wyzwalacza.

    • Jeśli type ma inną wartość: źródło lub wyzwalacz nie zostały zarejestrowane. type wyjaśnia, dlaczego. Odpowiedni raport atrybucji (i raport debugowania dotyczący powodzenia) będzie niedostępny. W zależności od type szczegółowego raportu debugowania możesz potraktować te informacje jako punkt danych analizy utraty (czyli nie podejmować żadnych działań) lub zgłosić błąd albo rozwiązać problem z implementacją. Szczegółowe informacje znajdziesz w scenariuszu szczegółowego raportu debugowania.

Możliwe scenariusze

Raport debugowania

Jeśli w przypadku konwersji z użyciem plików cookie otrzymasz raport debugowania z informacją o sukcesie, oznacza to, że ta konwersja została zarejestrowana w raportowaniu atrybucji.

Możesz później otrzymać raport atrybucji dotyczący tej konwersji, z kilkoma wyjątkami:

  • Zachowanie użytkownika: czyszczenie danych po konwersji i przed wysłaniem raportu o atrybucji, zamykanie przeglądarki itp. Jeśli użytkownik zamknie przeglądarkę po konwersji i nie otworzy jej przez tydzień, raport nie zostanie wysłany przez co najmniej tydzień. Możesz uznać to opóźnienie za stratę.
  • Dotyczy tylko raportów na poziomie zdarzenia: raport na poziomie zdarzenia zostaje zastąpiony innym raportem o wyższym priorytecie.
  • Możliwe problemy z siecią.

Szczegółowy raport debugowania typu source-success

Jeśli w przypadku źródła danej konwersji z pliku cookie otrzymasz szczegółowy raport debugowania typu source-success, oznacza to, że rejestracja źródła się powiodła. W zależności od tego, czy rejestracja wyzwalacza zakończy się później powodzeniem, możesz otrzymać raport dotyczący tej konwersji lub nie.

Należy jednak pamiętać o jednej kwestii:

Szczegółowy raport debugowania innego typu

Jeśli w przypadku konwersji z pliku cookie otrzymasz szczegółowy raport debugowania innego typu, nie otrzymasz raportu debugowania o powodzeniu, a w konsekwencji nie otrzymasz też raportu o atrybucji, ponieważ szczegółowy raport oznacza, że wystąpił błąd, który można zgłosić. Coś uniemożliwiło rejestrację źródła, rejestrację wyzwalacza, generowanie lub wysyłanie raportu. Możliwe przyczyny:

  • Limity prywatności
  • Limity miejsca na dane
  • Reguły niestandardowe
  • Problem z implementacją w kodzie
  • Błąd przeglądarki

Niektóre z nich są oczekiwane. Działania, które należy podjąć, zależą od type każdego szczegółowego raportu. Zapoznaj się z informacjami o raportach szczegółowych.

Brak raportów o debugowaniu

Jeśli w przypadku konwersji z użyciem pliku cookie otrzymasz tylko raport o atrybucji (bez raportu debugowania o powodzeniu ani szczegółowego raportu debugowania), oznacza to, że coś uniemożliwiło wygenerowanie raportów debugowania. Możliwe przyczyny:

  • preferencje użytkownika (użytkownik wyłączył pliki cookie innych firm);
  • Brak pliku cookie lub kluczy debugowania (klucz debugowania został usunięty z powodu braku pliku cookie). W chrome://attribution-internals otwórz kartę Dzienniki i sprawdź, czy nie ma tam żadnych problemów.
  • Problemy z siecią, które wystąpiły w momencie źródła lub wywołania, ale nie w momencie wysłania raportu o atrybucji.

Czy otrzymujesz raporty atrybucji?

Jest to przypadek, w którym nie otrzymujesz raportu debugowania: jeśli w przypadku danej konwersji z użyciem plików cookie nie otrzymujesz żadnych raportów (ani raportu debugowania, ani raportu atrybucji), oznacza to, że wystąpił błąd, którego nie można zgłosić. Możliwe przyczyny:

  • Podstawowy problem z integracją. Dowiedz się, jak rozwiązywać te problemy, w artykule Rozwiązywanie podstawowych problemów z integracją.
  • Możliwe problemy z siecią.
  • Preferencje użytkownika w ustawieniach przeglądarki, np. wyłączona Piaskownica prywatności.

Informacje o raportach debugowania szczegółowego

Każdy szczegółowy raport debugowania zawiera pole type, które zawiera przyczynę odrzucenia odpowiedniego raportu atrybucji. Korzystając z informacji, określ, jakie działanie należy podjąć w przypadku każdego type w raporcie szczegółowym.

Rejestracja źródła zakończona

Źródło zostało zarejestrowane.

source-success
Szczegóły i treść raportu

Raporty dotyczące ograniczeń związanych z ochroną prywatności

Te raporty są oczekiwane. Wskazują one ograniczenia dotyczące prywatności, aby zmniejszyć wyciek tożsamości użytkowników w różnych witrynach.

source-destination-limit
Szczegóły i treść raportu
source-noised
Szczegóły i treść raportu
trigger-attributions-per-source-destination-limit
Szczegóły i treść raportu
trigger-reporting-origin-limit
Szczegóły i treść raportu
trigger-event-noise
Szczegóły i treść raportu
trigger-event-excessive-reports
 Ten kod jest generowany, jeśli liczba raportów przekracza limit. Możesz zarejestrować maksymalnie 1 konwersję w przypadku wyświetleń i 3 w przypadku kliknięć. Pamiętaj, że możesz skonfigurować, jakie raporty chcesz otrzymywać, ustawiając priorytety. Szczegóły i treść raportu

Raporty dotyczące ograniczeń miejsca na dane

Te raporty są oczekiwane. Wskazują one ograniczenia miejsca na dane, aby zapobiec nadmiernemu zużyciu zasobów.

source-storage-limit
Szczegóły i treść raportu
trigger-event-storage-limit
Szczegóły i treść raportu
trigger-aggregate-storage-limit
Szczegóły i treść raportu

Raporty dotyczące reguł niestandardowych

Te raporty są oczekiwane, jeśli używasz filtrowania, deduplikacji, priorytetów lub filtrowania opartego na oknie. Na wszelki wypadek sprawdź odpowiednie reguły niestandardowe, aby potwierdzić, że raport odpowiadający temu szczegółowemu raportowi jest rzeczywiście raportem, który chcesz usunąć. Jeśli to prawda, nie musisz nic robić.

trigger-no-matching-filter-data
Szczegóły i treść raportu
trigger-event-no-matching-configuration
Szczegóły i treść raportu
trigger-event-deduplicated
Szczegóły i treść raportu
trigger-aggregate-deduplicated
Szczegóły i treść raportu
trigger-event-low-priority
Szczegóły i treść raportu
trigger-event-report-window-passed
Szczegóły i treść raportu
trigger-aggregate-report-window-passed
Szczegóły i treść raportu

Inne szczegółowe raporty

Te raporty mogą wskazywać potencjalne problemy z implementacją w kodzie.

trigger-no-matching-source
Może to być problem z implementacją. Sprawdź, czy konfiguracja <reporting origin, destination> nie zawiera błędów. Może to być też oczekiwane działanie interfejsu API. Na przykład użytkownik wyczyścił dane w okresie między wejściem w interakcję z reklamą a dokonaniem konwersji lub dokonał konwersji, nie widząc powiązanej z nią reklamy. Szczegóły i treść raportu
trigger-aggregate-no-contributions
Prawdopodobnie nie jest to zachowanie, jakiego oczekujesz od swojego kodu. Rozwiąż problem z kodem rejestracji wywołania. Sprawdź, czy konfiguracja udziału jest prawidłowa. Szczegóły i treść raportu
trigger-aggregate-insufficient-budget
Prawdopodobnie nie jest to zachowanie, jakiego oczekujesz od swojego kodu. Sprawdź dokładnie kod rejestracji wyzwalacza, aby upewnić się, że suma wszystkich wpłat nie przekracza budżetu na wpłaty. Szczegóły i treść raportu

Nieoczekiwane błędy (potencjalne błędy przeglądarki)

Te raporty są nieoczekiwane. Mogą być spowodowane błędem przeglądarki. Zgłoś błąd i w opisie podaj czynności, które pozwolą go odtworzyć.

source-unknown-error
Szczegóły i treść raportu
trigger-unknown-error
Szczegóły i treść raportu

Przykład analizy utraty

Krok 1. Konfiguracja i mapowanie z użyciem plików cookie

Aby skonfigurować system do generowania raportów debugowania o sukcesieszczegółowych raportów debugowania, wykonaj instrukcje podane w części 2: Konfigurowanie raportów debugowania.

Dzięki temu możesz używać informacji o konwersjach opartych na plikach cookie do wyszukiwania odpowiednich raportów debugowania lub raportów atrybucji.

Krok 2. Sprawdź, które rejestracje zostały zakończone sukcesem, a które raporty są niedostępne

Załóżmy, że w tym przykładzie system oparty na plikach cookie zarejestrował 100 konwersji.

Za każdym razem, gdy rejestrujesz konwersję opartą na plikach cookie, szukaj raportu debugowania o sukcesie (wysyłanego natychmiast), który ma taką samą parę <source_debug_key, trigger_debug_key> jak ta konwersja oparta na plikach cookie.

Załóżmy, że w przypadku 70 konwersji z plików cookie otrzymano raport debugowania z informacją o sukcesie.

  • Raporty o sukcesie oznaczają, że atrybucja została zarejestrowana. Możesz więc założyć, że otrzymasz raport atrybucji odpowiadający każdemu raportowi o sukcesie – z pewnymi wyjątkami.
  • Możesz zdecydować się na monitorowanie tych wyjątków. Aby to zrobić, w ciągu najbliższych dni lub tygodni (w zależności od daty wygaśnięcia) szukaj w raportach atrybucji wysyłanych do punktu końcowego tych, które mają taką samą parę kluczy debugowania jak każdy raport debugowania dotyczący powodzenia. Poczekaj chwilę: raporty mogą nie zostać wysłane od razu po zakończeniu każdego okresu. Załóżmy, że znajdziesz tylko 60 raportów atrybucji. Brak 10 raportów o atrybucji może być spowodowany zachowaniem użytkowników.

Krok 3. Krótka ocena utraty

Brakuje 30 raportów debugowania o sukcesie (100 – 70 = 30). Oznacza to, że te 30 konwersji (śledzonych w ramach implementacji opartej na plikach cookie) nie zostało zarejestrowanych w raportowaniu atrybucji. Nie będziesz otrzymywać raportów o atrybucji dotyczących tych kampanii.

Masz 100 konwersji opartych na plikach cookie i tylko 70 konwersji opartych na atrybucji, więc utrata wynosi 30%. Teraz masz krótką ocenę utraty.

Krok 4. Analiza przyczyn

Aby sprawdzić, dlaczego brakuje tych raportów, poszukaj odpowiednich szczegółowych raportów debugowania, które zostały wysłane w momencie konwersji (rejestracji wywołania) lub wcześniej w momencie rejestracji źródła. Użyj kluczy konwersji opartych na plikach cookie, aby zmapować je na szczegółowe raporty debugowania.

  • Załóżmy, że jest 10 kluczy, dla których nie ma szczegółowego raportu debugowania. Sprawdź, czy nie występuje problem z integracją. Jeśli nie, może to być spowodowane zachowaniem użytkownika.
  • Masz 20 szczegółowych raportów debugowania. Możesz teraz doprecyzować analizę strat. Przeanalizuj pole type w każdym szczegółowym raporcie. Możesz na przykład zauważyć, że:
    • 10 raportów (czyli 10% w naszym przykładzie) brakuje z powodu pending destination limit
    • 5 raportów (5%) nie ma z powodu trigger-aggregate-no-contributions.
    • 5 raportów (5%) nie ma z powodu unknown-error.

Krok 5. Podejmij działania i rozwiąż problem

Teraz, gdy wiesz już, dlaczego brakuje raportów, możesz wykorzystać te informacje w praktyce.

Działania, które należy podjąć, zależą od type każdego szczegółowego raportu. Szczegółowe informacje znajdziesz w dokumentacji raportów szczegółowych. Na przykład:

  • pending-destination-limit to ochrona prywatności. Nie musisz nic robić. Używaj tej liczby jako punktu danych na potrzeby własnej widoczności i monitorowania.
  • trigger-aggregate-no-contributions może wskazywać na problem z implementacją po Twojej stronie. Dokładniej przeanalizuj tę kwestię. W razie potrzeby skorzystaj ze szczegółów w treści raportu szczegółowego, aby rozwiązać ten problem.
  • unknown-error może być oznaką błędu przeglądarki lub sieci. Jeśli ten problem występuje często, zgłoś błąd deweloperom przeglądarki.