Introduction au taggage côté serveur

Le taggage côté serveur est une nouvelle façon d'utiliser Google Tag Manager pour instrumenter votre sur tous les appareils. Les conteneurs serveur utilisent les mêmes balises, déclencheurs auquel vous êtes habitué, tout en offrant de nouveaux outils qui vous permettent de mesurer l'activité des utilisateurs, quel que soit l'endroit où elle se produit.

Une configuration de taggage type sans taggage côté serveur repose sur conteneur de la page pour envoyer les données de mesure à différents serveurs de collecte. La figure 1 illustre la façon dont un conteneur Web Tag Manager s'exécute dans un le navigateur Web envoie des données à plusieurs serveurs.

Schéma d'un site configuré pour utiliser un conteneur Web Google Tag Manager

Figure 1: Schéma d'un site configuré pour utiliser un conteneur Web Google Tag Manager.

En revanche, un conteneur serveur ne s'exécute pas dans le navigateur de l'utilisateur téléphone. Au lieu de cela, il s'exécute sur un serveur que vous contrôlez.

Schéma d'un site instrumenté à l'aide d'un conteneur de taggage côté serveur

Figure 2: Exemple de configuration d'ajout de tags utilisant un conteneur serveur

Le serveur s'exécute dans votre propre projet Google Cloud Platform ou dans un un autre environnement de votre choix, et vous seul aux données du serveur jusqu'à ce que vous décidiez de les envoyer ailleurs. Vous avez un contrôle total sur la façon dont ces données sont formées et où elles sont acheminées depuis le Google Cloud. Les tags sont créés à l'aide des JavaScript en bac à sable de l'IA générative. Les autorisations vous permettent de voir ce que la balise peut faire. vous permettent de définir des limites autour du conteneur.

Le serveur reçoit les requêtes Web de l'appareil de l'utilisateur et les transforme en événements. Chaque événement est traité par l'événement les balises, les déclencheurs et les variables. Balises, déclencheurs et variables sur un serveur fonctionnent exactement de la même manière que dans d'autres types de conteneurs: les déclencheurs Examinez chaque événement afin de détecter certaines conditions et, le cas échéant, de déclencher qui envoient les données d'événement à traiter.

Ce modèle introduit deux questions importantes concernant les conteneurs de serveur:

  • Comment les données de mesure sont-elles transmises de l'appareil de l'utilisateur au conteneur serveur ?
  • Comment les données de mesure envoyées à un conteneur serveur sont-elles transformées en événement ?

La réponse à ces deux questions est l'existence d'un nouveau type d'entité à utiliser dans le serveur conteneurs: un client

Fonctionnement des clients

Les clients sont des adaptateurs entre le logiciel exécuté sur l'appareil d'un utilisateur et votre conteneur de serveur. Le client reçoit les données de mesure d'un appareil, transforme ces données en un ou plusieurs événements, achemine les données à traiter dans le conteneur, et empaquette les résultats à renvoyer au demandeur.

Cela fait beaucoup de choses ! Intéressons-nous de plus près à chaque partie. La figure 3 illustre les données transmises au conteneur serveur à partir du site Web de l'utilisateur navigateur, et de votre serveur Web au conteneur serveur.

Schéma d'un site instrumenté à l'aide d'un conteneur de taggage côté serveur

Figure 3: Un client différent gère chaque flux de données.

Les clients reçoivent les données de mesure d'un appareil. Disons que vous voulez mesurer l'activité des utilisateurs à trois endroits: un site Web, une application pour téléphone grille-pain. Votre site Web utilise Google Analytics, votre application pour téléphone utilise Firebase Analytics, et votre grille-pain utilise un protocole propriétaire appelé "ToastMesurer".

L'instrumentation de ces trois appareils avec Google Tag Manager nécessite normalement un conteneur différent pour chaque plate-forme. Comme le conteneur serveur n'exécute pas sur l'appareil, le même conteneur peut gérer l'instrumentation d'analyse pour tous trois plateformes d’appareils. Il y a cependant un problème. Ces appareils ne sont pas tous communiquer de la même manière. Le protocole Google Analytics est différent du le protocole ToastMesurer. C'est là que les clients entrent en jeu.

Au lieu de ces trois conteneurs, votre conteneur serveur a trois clients. Chaque requête entrant dans le conteneur sera traitée par chaque client par ordre de priorité, le client ayant la priorité la plus élevée en premier. La première chose que chaque client est de décider s’il sait comment traiter ce type de demande. Si c'est le cas, le client "revendique" la demande et passe à l'étape suivante du en cours de traitement. Le fait de revendiquer la requête empêche les clients suivants de en cours d'exécution. Si le client ne peut pas traiter la requête, il ne fait rien et autorise la d'autres clients pour décider de traiter la demande ou non.

Les clients transforment les données des requêtes en un ou plusieurs événements. Une fois que le client ToastMeasurement a revendiqué une requête, il doit transformer le dans une requête que le reste du conteneur comprend. C'est quelque chose un ensemble d'événements ;

Les événements sont des choses qui se produisent que vous souhaitez mesurer. Il peut s'agir de n'importe quel élément: start_toasting, finish_toasting ou buy_bread. Certains recommandations sur la structure de les événements générés par un client, mais la seule condition est que le reste le conteneur les comprend.

Les clients exécutent le conteneur. Le client a revendiqué la requête et l'a transformée en événements. Passons maintenant aux balises, déclencheurs et variables. Le client transmet chaque événement au reste du conteneur pour un traitement ultérieur.

Les clients empaquettent les résultats pour les renvoyer à l'appareil. Une fois que conteneur s'est exécuté, il est temps de réagir au grille-pain. La réponse peut prendre de nombreuses formes. Peut-être que le client dit simplement « OK, c’est fait ». Peut-être que l'une des balises veut pour rediriger la requête vers un autre serveur de collecte. Ou peut-être que l'un des tags indique aux lumières du grille-pain de changer de couleur. Tout ce qui est censé la tâche du client est d'empaqueter les résultats et de les renvoyer au demandeur.

Heureusement, Tag Manager gère la plupart de ces opérations à votre place. Les conteneurs de serveur avec trois clients inclus: Google Analytics 4, Google Analytics: Universal Analytics et le protocole de mesure. Ces clients vous fournissent les outils dont vous avez besoin pour commencer à instrumenter votre application dès que vous avez créé votre conteneur.

Brève exemple

Prenons un exemple rapide pour voir comment toutes les pièces s’emboîtent. Dans Dans cet exemple, vous allez créer les éléments suivants:

  1. Un site Web simple qui utilise gtag.js pour envoyer un événement click à un conteneur de serveur.
  2. Un client Google Analytics 4 qui reçoit l'événement.
  3. Déclencheur qui se déclenche lors d'un événement click.
  4. Une balise Google Analytics 4 qui envoie les données d'événement à Google Analytics pour en cours de traitement.

Pour cet exemple, nous supposons que vous avez déjà créé et déployé votre conteneur serveur.

Configurer gtag.js

Commencez par configurer gtag.js pour envoyer les données à votre conteneur serveur. Avec Dans gtag.js, l'envoi de données à votre conteneur serveur s'effectue de la même manière que Google Analytics, avec une modification. Comme dans l'exemple de page ci-dessous, définissez Option de configuration server_container_url pour pointer vers le conteneur de serveur.

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID', {
    server_container_url: 'https://analytics.example.com',
  });
</script>

Remplacez TAG_ID par l'ID de votre balise. Remplacez https://analytics.example.com par l'URL de votre conteneur serveur.

Ajoutez ensuite une fonction sendEvent() pour gérer les événements click:

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID', {
    server_container_url: 'https://analytics.example.com',
  });

  function sendEvent() {
    gtag('event', 'click');
  }
</script>

<button onclick="javascript:sendEvent()">Send Event</button>

Remplacez TAG_ID par l'ID de votre balise. Remplacez https://analytics.example.com par l'URL de votre conteneur serveur.

Avec cette configuration, les gestionnaires d'événements tels que la fonction sendEvent() inclus dans cet exemple envoie un événement click à votre conteneur serveur.

Client Google Analytics 4

Votre conteneur a besoin d'un client pour recevoir l'événement lorsqu'il atteint le serveur. Heureusement, les conteneurs serveur sont fournis avec un client Google Analytics 4 préinstallés. Vous avez donc terminé cette étape.

Déclencheur de clic

Ensuite, créez un déclencheur qui s'exécute sur l'événement click. Créer une Déclencheur qui se déclenche lorsque la variable intégrée Nom de l'événement est égale à « cliquer ».

configuration du déclencheur

Balise Google Analytics 4

Enfin, associez une balise GA4 au déclencheur. Comme pour les clients, un conteneur serveur est fourni avec une balise GA4. Il vous suffit de créer la balise, de configurer vos paramètres et maintenant vous avez connecté votre conteneur. Les clients GA4 et les balises GA4 sont conçus pour travailler ensemble. Il vous suffit donc de créer une balise GA4 et ses sera automatiquement extraite des événements issus de client.

Prévisualiser le conteneur

Maintenant que le conteneur est configuré, cliquez sur Prévisualiser. Accédez à votre site Web dans un dans une autre fenêtre du navigateur. À mesure que les requêtes et les événements sont envoyés à votre serveur les requêtes et les événements apparaissent sur la gauche la page d'aperçu.

Une fois que vous êtes satisfait de vos modifications, publiez le conteneur serveur.

Configurer votre serveur pour le mode production avec une diffusion propriétaire

Avant d'envoyer du trafic de production vers votre conteneur serveur, nous vous recommandons recommandez d'installer le serveur sur votre domaine propriétaire et en mettant à niveau le serveur vers mode production.