In Google Analytics einbinden

Über die Google Analytics-Plattform können Sie Nutzerinteraktionen mit Ihrem Unternehmen über verschiedene Geräte und Umgebungen hinweg messen. Google Analytics bietet Ressourcen zum Erfassen, Speichern, Verarbeiten und zur Berichterstellung für diese Nutzerinteraktionen.

Sie können Analysedaten auf Clientseite und auf Serverseite erfassen.

Analysedaten clientseitig erfassen

Verwenden Sie die Google Analytics APIs und SDKs, um zu messen, wie Nutzer mit Ihrem Content und Ihren Marketinginitiativen interagieren. Sie können die Nutzerinteraktionsdaten in der Google Analytics-Benutzeroberfläche anzeigen lassen oder die Reporting APIs zum Abrufen der Daten verwenden. Wählen Sie einen der folgenden Links je nach Typ Ihres Clients aus, um weitere Informationen zur clientseitigen Erfassung von Analysedaten zu erhalten:

  • Webtracking (analytics.js): Zum Messen der Nutzerinteraktion mit Websites oder Webanwendungen
  • Android: Zum Messen der Nutzerinteraktion mit Android-Anwendungen
  • iOS: Zum Messen der Nutzerinteraktion mit iOS-Anwendungen
  • Measurement Protocol: Low-Level-Protokoll zum Messen der Nutzerinteraktion in einer beliebigen Umgebung

Analysedaten serverseitig erfassen

App Engine bietet einen Mechanismus zum Logging von Ereignissen in der Anwendung. Mit Google Analytics können Sie zusätzlich bestimmte serverseitige Ereignisse erfassen. So können Sie:

  • Verlaufsdaten analysieren: Mit App Engine können Sie die maximale Anzahl von Tagen oder die Größe von Logdateien konfigurieren. Nachdem dieses Limit überschritten wurde, haben Sie keinen Zugriff mehr auf diese Logdateien. Wenn Sie für das Tracking von Ereignissen stattdessen Google Analytics verwenden, haben Sie wesentlich länger Zugriff auf vergangene Ereignisse.
  • Wichtige Ereignisse erfassen: Logdateien können sehr umfangreich sein, da verschiedene Komponenten Ihrer Anwendung Daten in sie schreiben. Mithilfe des Ereignis-Trackings können Sie wichtige Ereignisse genau lokalisieren und zusammen mit Metadaten erfassen.
  • In der Benutzeroberfläche arbeiten: Nutzen Sie die umfassende Benutzeroberfläche von Google Analytics, um serverseitige Ereignisse bildlich dazustellen, Berichte darüber zu erstellen und diese zu exportieren.

Wenn Sie die serverseitige Erfassung von Analysedaten aktivieren möchten, können Sie einen HTTP-Client verwenden und HTTP-Anfragen mit dem Google Analytics Measurement Protocol stellen. Weitere Informationen finden Sie im Google Analytics-Entwicklerleitfaden für das Ereignis-Tracking.

Beispielanwendung

Die folgende Beispielanwendung zeigt das Tracking von Ereignissen in Ihrer App Engine-Anwendung. Die Anwendung stellt eine HTTP-Anfrage und sendet Daten über das Ereignis an Google Analytics.

Führen Sie diese Schritte aus, bevor Sie das Google Analytics Measurement Protocol in Google App Engine verwenden:

  1. Erstellen Sie ein Universal Analytics-Property und rufen Sie die Tracking-ID ab.

  2. Fügen Sie die Umgebungsvariablen mit Ihrer Tracking-ID in die Datei app.yaml ein. Für die unten gezeigte Beispielanwendung gehen Sie beispielsweise so vor:

    env_variables:
      GA_TRACKING_ID: "YOUR-GA-TRACKING-ID"
  3. Bevor Sie die Beispielanwendung lokal ausführen, legen Sie die Umgebungsvariablen fest, die von der Anwendung benötigt werden:

    export GA_TRACKING_ID=YOUR_TRACKING_ID
    composer install
    
  4. Führen Sie den Beispielcode lokal über die Befehlszeile aus. Beispiel:

    php -S localhost:8000
    

  5. Integrieren Sie den folgenden Code in Ihre App Engine-Anwendung, um Ereignis-Trackingdaten an Google Analytics zu senden:

    $baseUri = 'http://www.google-analytics.com/';
    $client = new GuzzleHttp\Client(['base_uri' => $baseUri]);
    $formData = [
        'v' => '1',  # API Version.
        'tid' => $trackingId,  # Tracking ID / Property ID.
        # Anonymous Client Identifier. Ideally, this should be a UUID that
        # is associated with particular user, device, or browser instance.
        'cid' => '555',
        't' => 'event',  # Event hit type.
        'ec' => 'Poker',  # Event category.
        'ea' => 'Royal Flush',  # Event action.
        'el' => 'Hearts',  # Event label.
        'ev' => 0,  # Event value, must be an integer
    ];
    $gaResponse = $client->request('POST', 'collect', ['form_params' => $formData]);

Wenn Sie die Einstellung in Ihrer Google Analytics-Admin-Konsole aktiviert haben, um Traffic von Spidern und Bots auszuschließen, oder wenn Sie Google Analytics 4 verwenden (dieser Traffic wird automatisch gefiltert), sehen Sie möglicherweise keine Analytics-Ergebnisse von App Engine Clients. In diesen Szenarien wird der standardmäßige User-Agent von App Engine herausgefiltert. Fügen Sie den Parameter ua in Ihre Tracking-Daten ein und legen Sie dafür einen benutzerdefinierten Wert fest, um App Engine-Ergebnisse aufzurufen.