In diesem Leitfaden wird Folgendes beschrieben:
- Einen Tagging-Server in der App Engine der Google Cloud Platform (GCP) bereitstellen
- Aktualisieren Sie den Tagging-Server, um Live-Traffic zu verarbeiten.
- Erhöhen oder verringern Sie die Anzahl der Server, auf denen Ihr Google Tag Manager-Container ausgeführt wird.
- Halten Sie die Tagging-Serverversion nach der Bereitstellung des Servers auf dem neuesten Stand.
Voraussetzungen
- Sie benötigen ein GCP-Konto. Erstellen Sie ein neues GCP-Konto, wenn Sie noch keines haben.
- Sie benötigen ein GCP-Rechnungskonto. Falls Sie noch keines haben, erstellen Sie ein GCP-Rechnungskonto. Dafür ist die Rolle „Rechnungskontoersteller“ erforderlich.
- Sie benötigen die Rolle „Projektersteller“ und „Rechnungskontonutzer“. Weitere Informationen zum Hinzufügen von Rollen
1. Server bereitstellen
Sie können einen App Engine-Dienst entweder automatisch in Google Tag Manager oder manuell in Google Cloud bereitstellen.
Bereitstellungsmethode auswählen
Anfängliche Serverkonfiguration (testing
)
Mit der Testkonfiguration können Sie das Produkt untersuchen. Dazu senden Sie nur wenige Testzugriffe und verwenden die Vorschaufunktion in Tag Manager. Diese Konfiguration ist eine F1-Instanzklasse von App Engine in der Standardumgebung und in den meisten Fällen entstehen Ihnen keine Kosten.
2. App Engine in der Produktion verwenden
In der Konfiguration production
kostet jeder Server etwa 40 $ / Monat (USD). Jeder Server ist eine App Engine-Instanz mit
1 vCPU, 0,5 GB Arbeitsspeicher, 10 GB Laufwerk in der flexiblen Umgebung.
Weitere Informationen zur Abrechnung in App Engine und zur Konfiguration von Abrechnungsbenachrichtigungen finden Sie unter App Engine-Kosten verwalten. Wir empfehlen dringend, eine Abrechnungsbenachrichtigung einzurichten.
Empfohlene Produktionseinstellungen
Wir empfehlen, mindestens 3 Server auszuführen, um das Risiko eines Datenverlusts bei einem Serverausfall zu verringern. Sie können jedoch auch weniger (oder mehr) Server ausführen. Wir gehen davon aus, dass 3 bis 6 Server (Standardeinstellung) 50 bis 200 Anfragen pro Sekunde verarbeiten. Die Leistung hängt von der Anzahl der Tags und ihrer Funktion ab.
So konfigurieren Sie Ihren Tagging-Server:
- Öffnen Sie die Cloud Shell der Google Cloud Platform.
- Legen Sie das Cloud Platform-Projekt in Cloud Shell fest. Ersetzen Sie
project ID
durch die zuvor notierte GCP-Projekt-ID:gcloud config set project project ID
- Führen Sie das unten beschriebene Einrichtungsskript aus, um den Tagging-Server für eine Produktionsumgebung neu zu konfigurieren. Führen Sie die folgenden Aufgaben aus:
bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
- Ändern Sie den Deployment-Typ in
production
. - Richten Sie zusätzliche Server für den Produktions-Traffic ein. Wir empfehlen mindestens drei Server.
- Ändern Sie den Deployment-Typ in
Optional: App Engine-Anfrage-Logging deaktivieren
Standardmäßig protokolliert App Engine Informationen zu jeder einzelnen Anfrage (z. B. Anfragepfad, Abfrageparameter usw.), die sie erhält. Wenn der Tagging-Server viele Anfragen pro Monat verarbeitet (z.B. mehr als eine Million), können für diese Lognachrichten erhebliche Logging-Gebühren anfallen. Um die Logging-Gebühren zu verringern oder zu beseitigen, empfehlen wir, das App Engine-Anfrage-Logging zu deaktivieren.
So deaktivieren Sie das App Engine-Anfrage-Logging:
- Öffnen Sie in der Google Cloud Platform den Log-Router. Sie müssen sich in dem Projekt befinden, das mit Ihrer Container-ID übereinstimmt:
- Wählen Sie für die Zeile Typ: Cloud Logging-Bucket, Name: _Default das Dreipunkt-Menü aus und klicken Sie dann auf Senke bearbeiten.
- Wählen Sie unter Senkenziel den Log-Bucket _Default aus.
Fügen Sie unter Logs auswählen, die in die Senke einbezogen werden sollen eine neue Zeile ein. Geben Sie beim vorhandenen Einschlussfilter die folgende Regel ein:
NOT LOG_ID("appengine.googleapis.com/nginx.request") AND NOT LOG_ID("appengine.googleapis.com/request_log")
Wenn Sie auch das Logging aus dem Load-Balancer deaktivieren möchten, fügen Sie eine neue Zeile hinzu und geben Sie die folgende Regel in den vorhandenen Einschlussfilter ein:
NOT LOG_ID("requests")
Klicken Sie unten auf die Schaltfläche Senke aktualisieren.
Jetzt werden die App Engine-Anfragen vom Logging ausgeschlossen. Prüfen Sie im Log-Explorer, ob neue Anfragen nicht in den Logs aufgeführt werden.
3. Bereitstellung Ihrer benutzerdefinierten Domain zuordnen
Das standardmäßige serverseitige Tagging-Deployment wird in einer App Engine-Domain gehostet. Wir empfehlen, das Deployment zu ändern, um eine Subdomain Ihrer Website zu verwenden.
Ordnen Sie Ihre Website-Subdomain Ihrem Tagging-Server zu.
4. Server-URL zu Google Tag Manager hinzufügen
Nachdem Sie einen Server haben, muss Google Tag Manager erkennen, dass er Ihren Server verwenden sollte.
Öffnen Sie Google Tag Manager.
Klicken Sie auf den Servercontainer, den Sie auf Ihren Tagging-Server verweisen möchten.
Öffnen Sie die Servercontainereinstellungen auf dem Tab Verwaltung > Containereinstellungen.
Klicken Sie auf URL hinzufügen und fügen Sie Ihre Server-URL ein.
Speichern und zum Arbeitsbereich zurückkehren.
5. Validierung
Nachdem Sie den Tagging-Server eingerichtet haben, prüfen Sie, ob er wie vorgesehen funktioniert. Klicken Sie im Tag Manager-Arbeitsbereich auf die Schaltfläche Vorschau. Wenn die Vorschauseite geladen wird, ist alles richtig eingerichtet.
Vorschau mehrerer URLs
Wenn Sie einem einzelnen Tagging-Server mehrere Domains zugeordnet haben, muss in den Containereinstellungen jede URL hinzugefügt werden.
Wenn Sie mehrere URLs angegeben haben, müssen alle Pfade (der String nach dem Domainnamen) übereinstimmen.
Werke | Funktioniert nicht |
---|---|
URL 1: example.com/abc URL 2: example2.com/abc |
URL 1: example.com/abc URL 2: example2.com/def |
Wenn mehrere URLs hinzugefügt wurden, wird neben der Schaltfläche Vorschau ein Symbol angezeigt, über das Sie die URL für die Vorschau auswählen können.
Tagging-Server-Version aktualisieren
Neue Server-Updates für das Tagging enthalten Sicherheitslücken und neue Funktionen. Wir empfehlen, den Tagging-Server zumindest für jede Hauptversion zu aktualisieren, z.B. von 1.x.x auf 2.x.x, wenn du in Tag Manager benachrichtigt wirst.
Führen Sie das Einrichtungsskript noch einmal mit den Einstellungen aus, die Sie zuvor verwendet haben, um den Tagging-Server zu aktualisieren. Die vorhandenen Einstellungen sind standardmäßig festgelegt.
So aktualisieren Sie Ihren Tagging-Server:
- Öffnen Sie die Cloud Shell der Google Cloud Platform.
- Legen Sie das Cloud Platform-Projekt in Cloud Shell fest. Ersetzen Sie
project ID
durch die zuvor notierte GCP-Projekt-ID:gcloud config set project project ID
- Führen Sie das Einrichtungsskript mit denselben Einstellungen aus, die Sie zuvor verwendet haben. Die vorhandenen Einstellungen sind standardmäßig festgelegt.
bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
So prüfen Sie, ob die Aktualisierung erfolgreich war:
- Klicken Sie in Ihrem Servercontainer auf die Schaltfläche Vorschau, um eine neue Debug-Sitzung zu starten und eine Anfrage an einen separaten Tab zu senden.
- Wähle in der Zusammenfassung den Tab Console aus und achte darauf, dass du keine Nachrichten zum Aktualisieren des Tagging-Servers siehst.
In Tag Manager werden Sie unter Umständen aufgefordert, den Tagging-Server bis zu einen Tag nach der Aktualisierung zu aktualisieren. Auf der Vorschauseite wird jedoch eine aktuelle Meldung zur Version des Tagging-Servers angezeigt.
Zeitüberschreitungen bei der Produktionsbereitstellung beheben
Wenn Sie das Einrichtungsskript ausführen, um den Tagging-Server zu erstellen oder neu zu konfigurieren, kann es zu einer Zeitüberschreitung beim Skript kommen. Dies kann verschiedene Gründe haben. Die zwei häufigsten sind:
Dienstkonten haben falsche Berechtigungen: Die Compute Engine- und App Engine-Dienstkonten sind für die Bereitstellung und Aufrechterhaltung der Produktionsbereitstellung verantwortlich. Standardmäßig sind sie mit den entsprechenden Berechtigungen vorkonfiguriert. In einigen Fällen können sie jedoch aufgrund der Richtlinie einer Organisation fehlerhaft sein.
- Rufen Sie in der Google Cloud Console in der linken Navigationsleiste die Seite IAM und Verwaltung auf.
- Suchen Sie das Compute Engine-Dienstkonto
<project_number>-compute@developer.gserviceaccount.com
und das App Engine-Dienstkonto<project_name>@appspot.gserviceaccount.com
. - Beide Dienstkonten müssen die Rolle
Editor
haben. Wenn ein Konto nicht die RolleEditor
hat, aktualisieren Sie die Rolle. Klicken Sie dazu auf das Stiftsymbol rechts neben dem Konto, dann auf das Drop-down-Menü der vorhandenen Rolle, scrollen Sie nach oben, klicken Sie auf Projekt und dann auf Bearbeiter.
Unzureichendes Kontingent: Die Produktionsbereitstellung verbraucht das Compute Engine-Kontingent. Wenn das Projekt nicht genügend Kontingent hat, wird es bei der Bereitstellung möglicherweise zu einer Zeitüberschreitung kommen, wenn Ressourcen bereitgestellt werden.
- Rufen Sie in der Google Cloud Console in der linken Navigationsleiste die Seite IAM und Verwaltung auf und klicken Sie dann in der linken Navigationsleiste auf den Tab Kontingente.
- Klicken Sie oben auf der Seite auf das Textfeld Tabelle filtern und geben Sie
Compute Engine API
ein. Klicken Sie auf das einzige Ergebnis. - Prüfen Sie, ob alle Kontingentstatus innerhalb des Limits liegen oder ein grünes Häkchen haben.
- Klicken Sie auf CPUs. Prüfen Sie, ob die aktuelle Nutzung und die Anzahl der bereitgestellten Instanzen weiterhin unter dem Limit für die Bereitstellungsregion liegen.