Ce guide s'adresse aux développeurs qui utilisent Cloud Run pour le taggage côté serveur et qui souhaitent configurer un serveur de prévisualisation privé.
Le taggage côté serveur vous permet de prévisualiser les modifications de taggage en mode Aperçu et Débogage avant de les appliquer. Il s'agit d'une partie essentielle du workflow de développement pour vous assurer que vos balises se comportent comme prévu. Pour activer cette fonctionnalité, vous devez effectuer deux déploiements Cloud Run: un pour un serveur de taggage et un pour un serveur de prévisualisation. Ce guide fournit plus d'informations sur la manière dont les deux serveurs communiquent et sur la façon de les configurer dans un environnement d'entreprise.
Présentation
Lorsque vous déployez le taggage côté serveur sur Cloud Run, vous pouvez le faire avec ou sans équilibreur de charge. Pour les déploiements multirégionaux, vous avez besoin d'un équilibreur de charge pour rediriger le trafic vers l'instance la plus proche.
Figure 1: Déploiement sans équilibreur de charge.
Figure 2: Déploiement avec un équilibreur de charge.
Dans les deux déploiements, le point d'entrée du serveur de prévisualisation et de l'environnement de taggage de production est la même URL (par exemple, sgtm.example.com
). Le serveur de taggage est déployé avec une variable d'environnement appelée PREVIEW_SERVER_URL
, qui représente l'URL du serveur de prévisualisation.
Lorsque vous accédez à tagmanager.google.com
et ouvrez le mode Aperçu, Tag Manager accède à sgtm.example.com?id=[gtm_server_id]>m_auth=[auth_id]>m_preview=[env_id]
et définit un cookie. Lorsque vous utilisez ensuite le même navigateur pour explorer le site Web cible, les requêtes envoyées à sgtm.example.com
transfèrent également le cookie. Grâce au cookie, le serveur de taggage sait qu'il s'agit de vos événements. Il ne les transfère donc que vers le serveur de prévisualisation pour que vous puissiez les afficher et les résoudre.
Le serveur de taggage transfère ces événements en envoyant des requêtes HTTP à l'URL définie dans la variable d'environnement PREVIEW_SERVER_URL
.
À propos des serveurs Preview publics
Pour que ce comportement par défaut soit appliqué, votre serveur de prévisualisation doit être public. Toutefois, cela pose problème pour certaines entreprises, car elles ont des restrictions concernant l'infrastructure pouvant être accessible au public et elles appliquent généralement des mesures de sécurité supplémentaires via un équilibreur de charge. Un équilibreur de charge vous offre les avantages suivants:
- Contrôle plus précis des fonctionnalités telles que les règles SSL pour limiter les suites de chiffrement
- Intégration native à Cloud Armor pour le pare-feu d'application Web (WAF) ou le déni de service distribué (DDoS).
- Fonctionnalités avancées de gestion du trafic
Acheminer votre serveur de prévisualisation via un équilibreur de charge
Pour créer un serveur de prévisualisation privé, utilisez le routage basé sur l'hôte via le répartiteur de charge avec un sous-domaine supplémentaire. Le reste de ce guide explique comment acheminer votre serveur Preview via un équilibreur de charge.
Prérequis
- Le serveur de taggage est déployé sur Cloud Run derrière un équilibreur de charge.
- Accès au projet Google Cloud.
- Accès à un nouveau sous-domaine pour le serveur Preview (par exemple,
preview.sgtm.example.com
).
Étape 1: Mettez à jour la variable d'environnement avec un nouveau sous-domaine
Pour utiliser le nouveau domaine du serveur de prévisualisation, mettez à jour la variable d'environnement du serveur de taggage côté serveur PREVIEW_SERVER_URL
:
- Ouvrez Cloud Run.
- Sélectionnez le serveur de taggage.
- Cliquez sur Modifier, puis sur Déployer la nouvelle révision.
- Dans l'onglet Variables et secrets, dans la section Conteneurs, remplacez
PREVIEW_SERVER_URL
par le nouveau domaine. Par exemple,preview.sgtm.example.com
.
Étape 2: Configurez l'équilibreur de charge existant pour qu'il utilise le routage basé sur l'hôte
Pour configurer l'équilibreur de charge existant, utilisez le routage basé sur l'hôte et envoyez le trafic au bon serveur:
- Dans Cloud Run, ouvrez la page Équilibrage de charge, puis cliquez sur le nom de votre équilibreur de charge.
- Cliquez sur le bouton Modifier.
- Cliquez sur la page Configuration du backend, puis ouvrez le menu déroulant Services de backend et buckets backend.
- Cliquez sur Créer un service de backend, puis procédez comme suit :
- Donnez-lui un nom approprié (par exemple,
preview-backend-service
). - Sélectionnez le type de backend Groupe de points de terminaison du réseau sans serveur.
- Donnez-lui un nom approprié (par exemple,
- Dans la section Backend, créez un groupe de points de terminaison du réseau sans serveur, puis procédez comme suit :
- Attribuez-lui un nom, puis sélectionnez la région dans laquelle le serveur Preview est hébergé.
- Sélectionnez Cloud Run comme type de groupe de points de terminaison du réseau sans serveur, et le serveur Preview comme service.
- Cliquez sur Créer.
- Modifiez les autres paramètres si nécessaire, ou conservez les valeurs par défaut, puis cliquez sur Créer.
Étape 3: Ajoutez une règle et mettez à jour le contrôle d'entrée
Pour ajouter une règle pour la nouvelle URL d'hôte et mettre à jour le contrôle d'entrée:
- Ouvrez la page Règles d'hôte et de chemin d'accès.
- Ajoutez une règle dans laquelle :
- L'hôte est la nouvelle URL:
preview.sgtm.example.com
- Le chemin d'accès est le suivant:
/*
- Le backend est:
preview-backend-service
- L'hôte est la nouvelle URL:
- Cliquez sur le bouton Mettre à jour pour redéployer l'équilibreur de charge.
- Dans Cloud Run, ouvrez le serveur d'aperçu, puis sélectionnez l'onglet Networking (Mise en réseau).
- Définissez Internal (Interne) sur Ingress control (Contrôle d'entrée) et cochez Allow traffic from external application load balancers (Autoriser le trafic provenant d'équilibreurs de charge d'application externes) pour qu'il ne soit pas accessible au public.
Résultat: votre architecture de serveur devrait maintenant ressembler à la figure 3, où les requêtes de trafic sont toutes dirigées vers le serveur de taggage, et que le serveur de taggage peut transférer les requêtes vers le serveur de prévisualisation.
Figure 3: Utilisation du routage basé sur l'hôte.
Vérifier votre configuration
Pour vérifier votre configuration:
- Ouvrez Google Tag Manager.
- Ouvrez votre conteneur serveur.
- Cliquez sur Admin > Paramètres du conteneur et définissez l'URL du conteneur serveur sur l'URL du serveur de taggage.
- Fermez la fenêtre et prévisualisez l'espace de travail. La fenêtre de débogage s'ouvre. Lorsque vous parcourez votre site Web, vos événements devraient s'afficher dans la fenêtre de débogage.