Konfigurowanie tagowania po stronie serwera za pomocą Cloud Run

Z tego przewodnika dowiesz się, jak:

  • Udostępnij serwer podglądu, aby włączyć funkcję podglądu kontenera.
  • Udostępnij serwer tagowania do obsługi rzeczywistego ruchu.
  • Zwiększ lub zmniejsz liczbę serwerów, na których działa Twój kontener Menedżera tagów Google.
  • Po udostępnieniu serwera zaktualizuj wersję serwera tagowania.

Wymagania wstępne

  1. Potrzebujesz konta GCP. Jeśli nie masz konta GCP, utwórz nowe.
  2. Musisz mieć konto rozliczeniowe GCP. Jeśli go nie masz, utwórz konto rozliczeniowe GCP (wymaga roli twórcy kont rozliczeniowych).
  3. Musisz mieć rolę Twórca projektu i Użytkownik konta rozliczeniowego. Dowiedz się więcej o dodawaniu ról.

Udostępnij serwer podglądu i tagowania

Usługę Cloud Run możesz udostępnić automatycznie w Menedżerze tagów Google lub ręcznie w Google Cloud.

Edytuj konfigurację usługi

Aby zmienić konfigurację usługi:

  1. Otwórz Cloud Run.
  2. Wybierz usługę, którą chcesz dostosować.
  3. Kliknij Edit & Deploy New Version (Edytuj i wdróż nową wersję).
  4. Wprowadź zmiany i kliknij Wdróż.

Koszt Cloud Run

W tej konfiguracji Cloud Run każdy serwer kosztuje w przybliżeniu 45 USD miesięcznie. Każdy serwer to instancja Cloud Run z 1 vCPU i 0,5 GB pamięci korzystającego ze stale przydzielonego modelu cenowego CPU.

Zalecamy uruchomienie co najmniej 2 instancji, aby zmniejszyć ryzyko utraty danych w przypadku awarii serwera. Możesz jednak skonfigurować mniej (lub więcej) serwerów. Oczekujemy, że serwery autoskalowania będą obsługiwać od 2 do 350 żądań na sekundę, chociaż wydajność będzie zależała od liczby tagów i działania tych tagów.

Cloud Run będzie dynamicznie skalować się wraz z obciążeniem. Ustawienie max-instances to najgorszy scenariusz, jaki trzeba zapłacić za zasoby. Cloud Run nie udostępni tylu instancji, jeśli nie będzie to konieczne.

Kalkulator Cloud Run

Opcjonalnie: migracja z App Engine

Jeśli masz już utworzone wdrożenie App Engine i upewnisz się, że nie otrzymuje ono już żadnego ruchu, wyłącz aplikację App Engine, aby uniknąć nieoczekiwanych opłat.

Opcjonalnie: wdrożenie w wielu regionach

Jeśli Twoja witryna jest dostępna globalnie lub chcesz zapewnić nadmiarowość usługi, wdróż serwery tagowania w wielu regionach.

Zanim zaczniesz:

  1. Tworzenie systemu równoważenia obciążenia
  2. Zanotuj wybrany element (BACKEND_NAME).

Aby dodać do wdrożenia więcej regionów:

  1. Zastąp REGION regionem, w którym jest wdrożony serwer podglądu. To pole może być już wypełnione, jeśli zostały wykonane opcje wiersza poleceń w celu udostępnienia serwera podglądu i tagowania.
  2. Zastąp CONTAINER_CONFIG ciągiem konfiguracji kontenera z Menedżera tagów. To pole może być już wypełnione, jeśli zastosowano opcje wiersza poleceń w celu udostępnienia serwera podglądu i tagowania.
  3. Zastąp NEW_REGION nowym regionem, w którym chcesz wdrożyć serwer tagowania.
  4. Zastąp BACKEND_NAME nazwą wybraną podczas udostępniania systemu równoważenia obciążenia.
  5. Opcjonalnie: aby dodać kolejny region, zastąp zmienną NEW_REGION i ponownie uruchom fragment kodu.
    gcloud run deploy "server-side-tagging" \
    --region NEW_REGION \
    --image gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable \
    --platform managed \
    --ingress all \
    --min-instances 2 \
    --max-instances 10 \
    --timeout 60 \
    --allow-unauthenticated \
    --no-cpu-throttling \
    --update-env-vars PREVIEW_SERVER_URL="$(
      gcloud run services describe server-side-tagging-preview \--region "REGION" \
      --format="value(status.url)")",CONTAINER_CONFIG="CONTAINER_CONFIG" && \

    gcloud compute network-endpoint-groups create server-side-tagging-neg \
    --region=NEW_REGION \
    --network-endpoint-type=SERVERLESS \
    --cloud-run-service="server-side-tagging" && \

    gcloud compute backend-services add-backend --global "BACKEND_NAME" \
    --network-endpoint-group-region=NEW_REGION \
    --network-endpoint-group=server-side-tagging-neg

Opcjonalnie: wyłącz logowanie

Logowanie żądań

Domyślnie logowane są informacje o każdym żądaniu (np.ścieżka żądania, parametry zapytania itd.). Jeśli Twój serwer tagowania obsługuje wiele żądań w miesiącu (np. ponad milion), te komunikaty logu mogą spowodować znaczne opłaty za rejestrowanie. Aby zmniejszyć lub wyeliminować opłaty za logowanie, zalecamy wyłączenie rejestrowania żądań.

Aby wyłączyć rejestrowanie żądań:

  1. W Google Cloud Platform otwórz router logów. Sprawdź, czy jesteś w projekcie zgodnym z identyfikatorem Twojego kontenera:
    zrzut ekranu selektora projektów GCP z przykładowym identyfikatorem kontenera Menedżera tagów.
  2. W polu Typ: Zasobnik Cloud Logging, Nazwa: _Default, w wierszu _Default wybierz rozszerzone menu i kliknij Edytuj ujście.
  3. W sekcji Miejsce docelowe ujścia wybierz zasobnik logów _Default.
  4. Dodaj nowy wiersz w sekcji Wybierz logi do uwzględnienia w ujściu. Wpisz tę regułę do istniejącego filtra uwzględniania:

    NOT LOG_ID("run.googleapis.com/requests")
    
  5. Aby wyłączyć też logowanie w systemie równoważenia obciążenia, dodaj nowy wiersz i wpisz tę regułę do istniejącego filtra uwzględniania:

    NOT LOG_ID("requests")
    
  6. Zaktualizuj ujście, aby zastosować zmiany. Teraz żądania zostaną wykluczone z rejestrowania.

  7. Sprawdź, czy w logach eksploratora logów nie pojawiają się żadne nowe żądania.

Logowanie konsoli

Serwer tagowania, klienty lub tagi w kontenerze mogą rejestrować w konsoli komunikaty, co może wiązać się z opłatami za rejestrowanie. Aby zmniejszyć lub wyeliminować opłaty za logowanie, możesz wyłączyć niechciane komunikaty logu konsoli.

Zidentyfikuj niechciane dzienniki konsoli:

  1. W GCP otwórz eksplorator logów.
  2. Poszukaj niepożądanych komunikatów dziennika pochodzących z tagów. Przykład:

    Tag może wysyłać takie logi:

    const logToConsole = require('logToConsole');
    
    logToConsole('Custom message: ' + data.param1);
    logToConsole('An important message to keep around!');
    data.gtmOnSuccess()
    

    W polu textPayload znajdź odpowiednie komunikaty logu:
    zrzut ekranu eksploratora logów GCP z przykładowymi logami.

Aby wyłączyć komunikat dziennika konsoli:

  1. W Google Cloud Platform otwórz router logów. Sprawdź, czy jesteś w projekcie zgodnym z identyfikatorem Twojego kontenera:
    zrzut ekranu selektora projektów GCP z przykładowym identyfikatorem kontenera Menedżera tagów.
  2. W polu Typ: Zasobnik Cloud Logging, Nazwa: _Default, w wierszu _Default wybierz rozszerzone menu i kliknij Edytuj ujście.
  3. W sekcji Miejsce docelowe ujścia wybierz zasobnik logów _Default.
  4. Dodaj nowy wiersz w sekcji Wybierz logi do uwzględnienia w ujściu. Wpisz tę regułę do istniejącego filtra uwzględniania:

    NOT textPayload:"Custom message:"
    

    W przypadku dzienników konsoli zastąp tekst Custom message: podłańcuchem z dziennika konsoli, który chcesz wyłączyć. Aby uzyskać bardziej szczegółowe filtry, użyj języka zapytań logowania.

  5. Zaktualizuj ujście, aby zastosować zmiany. Pasujący komunikat logToConsole powinien być wykluczony z logowania.

  6. Sprawdź, czy w eksploratorze logów nie wyświetlają się żadne nowe komunikaty dziennika konsoli.

2. Mapowanie wdrożenia na własną domenę

Aby skonfigurować domenę niestandardową, użyj globalnego zewnętrznego systemu równoważenia obciążenia aplikacji.

3. Dodaj adres URL serwera do Menedżera tagów Google

Skoro masz już serwer, musisz się upewnić, że Menedżer tagów Google ma dostęp do Twojego serwera.

  1. Otwórz Menedżera tagów Google.

  2. Kliknij kontener serwera, który ma wskazywać Twój serwer tagowania.

  3. Otwórz ustawienia kontenera serwera na karcie Administracja > Ustawienia kontenera.

  4. Kliknij Dodaj URL i wklej adres URL serwera.

  5. Zapisz i wróć do obszaru roboczego.

4. Weryfikacja

Po skonfigurowaniu serwera tagowania upewnij się, że działa on prawidłowo. W obszarze roboczym Menedżera tagów kliknij przycisk Podgląd. Jeśli strona podglądu się załaduje, wszystko jest skonfigurowane poprawnie.

Wyświetlanie podglądu wielu adresów URL

Jeśli na 1 serwer tagowania masz zmapowanych wiele domen, sprawdź, czy w ustawieniach kontenera zostały dodane wszystkie adresy URL.

Jeśli podasz kilka adresów URL, wszystkie ścieżki (ciąg znaków po nazwie domeny) muszą być takie same.

Utwory Nie działa
URL 1: example.com/abc
URL 2: example2.com/abc
URL 1: example.com/abc
URL 2: example2.com/def

Jeśli dodasz większą liczbę adresów URL, obok przycisku Podgląd zobaczysz ikonę, która umożliwi wybranie adresu, którego podgląd chcesz wyświetlić.

Zaktualizuj wersję serwera tagowania

Nowe aktualizacje serwera tagowania zawierają poprawki zabezpieczeń i nowe funkcje. Zalecamy aktualizację serwera tagowania w przypadku każdej głównej wersji (np. uaktualnienia z wersji 1.x.x do 2.x.x), gdy Menedżer tagów powiadomi Cię o aktualizacji.

Aby zaktualizować serwer tagowania, wdróż nową wersję, używając tych samych ustawień, co wcześniej.

  1. Otwórz Cloud Run.
  2. Wybierz usługę, którą chcesz zaktualizować.
  3. Kliknij Edit & Deploy New Version (Edytuj i wdróż nową wersję).
  4. Ustaw URL obrazu kontenera na gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable i kliknij Wdróż.

Aby sprawdzić, czy aktualizacja się powiodła:

  1. W kontenerze serwera kliknij przycisk Podgląd, aby rozpocząć nową sesję debugowania i wysłać żądanie na osobnej karcie.
  2. W podsumowaniu wybierz kartę Konsola i upewnij się, że nie ma żadnych komunikatów z prośbą o zaktualizowanie serwera tagowania.

Menedżer tagów może wyświetlać komunikaty z prośbą o zaktualizowanie serwera tagowania przez maksymalnie 1 dzień od zakończenia tej aktualizacji. Na stronie podglądu będzie jednak widoczny aktualny komunikat o wersji serwera tagowania.