Commencer avec le tracking des messages get-started-tracking
Fonctionnalités de tracking
Configuration du tracking configure-tracking
Pour les déploiements hybrides/on-premise de Campaign Classic v7, vous devez configurer le suivi au niveau de l’instance avant de l’utiliser.
Principe de fonctionnement
Avant d’utiliser le tracking, vous devez d’abord le paramétrer pour votre instance. La configuration doit être effectuée sur le(s) serveur(s) applicatif(s) et le(s) serveur(s) web Adobe Campaign.
Dans Campaign, il existe deux types de tracking :
- Tracking web : ce mode permet de suivre les visites sur les pages de votre site web.
- Tracking des messages : ce mode permet de suivre les diffusions de messages et le comportement des personnes destinataires.
Le mode de suivi est sélectionné lors de l’installation. Pour les installations on-premise, la configuration du tracking doit être définie au niveau de l’instance. En savoir plus
Serveur de tracking
Pour paramétrer le tracking, votre instance doit être déclarée et enregistrée auprès du ou des serveurs de tracking. Le serveur de tracking est utilisé pour enregistrer et récupérer des informations sur les URL sur lesquelles les personnes destinataires ont cliqué.
Pour les installations on-premise, le serveur de tracking est généralement un serveur web qui exécute l’application web d’Adobe Campaign. L’URL du serveur de tracking doit être définie dans la configuration de votre instance. En savoir plus
Enregistrement du tracking
Une fois le tracking configuré et les URL renseignées, le serveur de tracking doit être enregistré. L’enregistrement permet à Adobe Campaign d’enregistrer les informations de tracking et de fournir des rapports et des statistiques sur les activités suivies.
Pour les installations on-premise, les informations de tracking sont stockées dans la base de données et récupérées par le biais de workflows techniques. Le workflow technique Tracking traite et stocke les données de tracking collectées auprès du serveur de redirection. En savoir plus
Tracking des applications web web-application-tracking
Tracking d'une application web
Vous pouvez également tracker et mesurer les visites sur les pages d'application web avec des balises de tracking. Cette fonctionnalité peut être utilisée pour tous les types d'application web, tels que les formulaires et les landing pages. En savoir plus
Désinscription (opt-out) du tracking des applications web
Le processus d’opt-out du tracking des applications web vous permet d'arrêter le tracking des comportements web des utilisateurs finaux qui se désinscrivent du tracking comportemental. Vous pouvez inclure la possibilité d’afficher une bannière dans des applications web ou des landing pages pour permettre aux utilisateurs de se désinscrire. En savoir plus
Résolution des problèmes liés au tracking tracking-troubleshooting
Les conseils de résolution des problèmes suivants s’appliquent aux déploiements hybrides/on-premise de Campaign Classic v7. Certaines informations peuvent également s’appliquer aux déploiements on-premise de Campaign v8. Pour Campaign v8 Managed Cloud Services, contactez votre représentant ou représentante Adobe pour obtenir de l’aide.
Pour connaître les étapes de résolution des problèmes de tracking de base dans Campaign v8, consultez la section Résolution des problèmes de tracking dans la documentation de Campaign v8.
Vérifications de base basic-checks
Vérifier que le processus trackinglogd est en cours d’exécution.
Ce processus lit la mémoire partagée IIS/serveur web et écrit les logs de redirection.
Vous pouvez y accéder à partir de la page d’accueil en sélectionnant l’onglet Surveillance dans votre instance. Vous pouvez également exécuter la commande suivante sur l’instance : <user>@<instance>:~$ nlserver pdump.
Si le processus trackinglogd n’apparaît pas dans la liste, lancez-le avec la commande suivante sur l’instance : <user>@<instance>:~$ nlserver start trackinglogd
Vérifier que le workflow technique de tracking s’est exécuté récemment.
Vous pouvez localiser le workflow technique de tracking dans les dossiers Administration > Production > Workflows techniques.
Résolution des problèmes avancée advanced-troubleshooting
| note note |
|---|
| NOTE |
| Disponible pour Windows uniquement |
Le fichier de log de tracking corrompu…/nl6/var/<nom_instance>/redir/log/0x0000 peut arrêter le worklow de tracking. Pour détecter facilement les lignes endommagées et les supprimer afin de reprendre le workflow de tracking, vous pouvez utiliser les commandes ci-dessous.
Je sais dans quel fichier se trouve la ligne corrompue.
Dans ce cas, des lignes corrompues se trouvent dans le fichier 0x00000000000A0000.log, mais le même processus peut être appliqué à un ensemble de fichiers, un par un.
| code language-none |
|---|
|
Vous pouvez ensuite arrêter le workflow de tracking, supprimer la ou les lignes endommagées et le redémarrer.
Je ne sais pas dans quel fichier se trouve la ligne corrompue.
-
Utilisez la ligne de commande ci-après pour vérifier tous les fichiers de tracking.
code language-none $ cd {install directory}/var/{instance name}/redir/log $ cat *.log | sed -nE '/^[[:alnum:]]{2}x[[:alnum:]]*\t[0-9T:\.-]*\t[0-9a-fA-F]*\t[0-9a-fA-F]*\t[0-9a-fA-F]*\t[[:alnum:]]*\t[[:alnum:]-]*\t[[:print:]]*\t[[:print:]]*\t[[:print:]]*\t([0-9a-fA-F\.:]*|[0-9a-fA-F\.:]*\t[[:print:]]*|[0-9a-fA-F\.:]*,[[:print:]]*)$/!p' -
La commande répertorie toutes les lignes corrompues. Par exemple :
code language-none 50x000000000FD7EC86 2017-06-24T21:00:50.96 1f506d71 1aeab4b6 1af77020 0 e5155671-4ab7-4ce4-a763-3b82dda6d881 h Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36 52.46.20.64note note NOTE Un retour à la ligne a été ajouté avant l'agent utilisateur pour permettre une meilleure lecture et il ne reflète pas le rendu réel. -
Exécutez une commande grep pour trouver le fichier correspondant.
code language-none $ grep -Rn <Log Id> # for example: $ grep -Rn 50x000000000FD7EC86 -
Recherchez le log défectueux avec le nom de fichier et le numéro de ligne. Par exemple :
code language-none ./0x000000000FD7E000.log:3207:50x000000000FD7EC86 2017-06-24T21:00:50.96 1f506d71 1aeab4b6 1af77020 0 e5155671-4ab7-4ce4-a763-3b82dda6d881 h Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36 52.46.20.64note note NOTE Un retour à la ligne a été ajouté avant l'agent utilisateur pour permettre une meilleure lecture et il ne reflète pas le rendu réel.
Vous pouvez ensuite arrêter le workflow de tracking, supprimer la ou les lignes endommagées et le redémarrer.
Lors de la tentative d’accès aux liens de tracking, le message suivant s’affiche :
Requested URL '/r/ id=h787bc0,281a4d8,281a4da&p1=1' cannot be found
-
Accédez à l'URL <serveur_redirection>/r/test et vérifiez si le numéro de build et le localhost ont été renvoyés par la requête.
-
Vérifiez la configuration spareServer dans le fichier serverConf.xml pour le serveur de tracking. Cette configuration doit être en mode de redirection.
code language-none <redirection> <spareServer _operation="update" enabledIf="$(hostname)!='test-rt1'" id="1" url="http://test-rt1:8080"/> <spareServer _operation="insert" enabledIf="$(hostname)!='test-rt4'" id="4" url="http://test-rt4:8080"/> <spareServer _operation="insert" enabledIf="$(hostname)!='test-rt3'" id="3" url="http://test-rt3:8080"/> <spareServer _operation="insert" enabledIf="$(hostname)!=test-rt2'" id="2" url="http://test-rt2:8080"/> </redirection> -
Vérifiez manuellement si le fichier <deliveryID>.xml existe sur l'ordinateur dans le répertoire …/nl6/var/<nom_instance>/redir/url/<AAAA> (AAAA représente l’année de la diffusion).
-
Vérifiez manuellement si <trackingUrlId> se trouve dans le fichier <deliveryID>.xml.
-
Vérifiez manuellement l’existence de broadlogID dans la diffusion deliveryID associée.
-
Vérifiez les autorisations des fichiers <deliveryID>.xml dans le répertoire…/nl6/var/<nom_instance>/redir/url/year.
Elles doivent comporter au moins l’autorisation 644 pour qu'Apache puisse lire les URL de tracking pour rediriger le lien demandé.
Procédez comme suit lors de la mise à jour de l'option NmsTracking_Pointer :
-
Arrêtez le workflow de tracking.
-
Arrêtez le service trackinglogd.
-
Mettez à jour l'option NmsTracking_Pointer vers la valeur souhaitée.
-
Redémarrez le service trackinglogd.
-
Redémarrez le workflow de tracking.
Vous pouvez personnaliser la formule de suivi des clics et spécifier une formule de tracking Adobe Analytics personnalisée.
Ce type de personnalisation doit être effectué avec prudence afin d’éviter l’ajout de caractères de saut de page supplémentaires. Tous les caractères de saut de page présents en dehors de l’expression Javascript seront également présents dans la formule finale.
Ce type de caractère de saut de ligne supplémentaire dans l'URL de tracking va entraîner un problème dans certaines messageries web (AOL, GMail, etc.).
Premier exemple :
-
Syntaxe incorrecte
code language-none <%@ include option='NmsTracking_ClickFormula' %><% // Parameters expected by Adobe Analytics var pattern = new RegExp("(nl611\.test15|google\.com)", 'i') if( $(urlstring).match(pattern) && delivery.FCP == false ) { %> &cid=<%= message.delivery.internalName %>&bid=<%= message.id.toString().toLowerCase() %><% } %> -
Syntaxe correcte
code language-none <%@ include option='NmsTracking_ClickFormula' %><% // Parameters expected by Adobe Analytics var pattern = new RegExp("(nl611\.test15|google\.com)", 'i') if( $(urlstring).match(pattern) && delivery.FCP == false ) { %>&cid=<%= message.delivery.internalName %>&bid=<%= message.id.toString().toLowerCase() %><% } %>
Pour comprendre où se trouve le saut de ligne supplémentaire, vous pouvez remplacer l’expression Javascript par une chaîne STRING fixe.
| code language-none |
|---|
|
Deuxième exemple
-
Syntaxe incorrecte
code language-none <%@ include option='NmsTracking_ClickFormula' %> <% // Parameters expected by Adobe Analytics var pattern = new RegExp("(vistaprint|entryUrl)", 'i') if( $(urlstring).match(pattern) && delivery.FCP == false ) {%>&cid=<%= message.delivery.internalName%>&bid=<%= message.id.toString().toLowerCase()%>&SHPID=<%= message.recipient.factShopper.shopper_id %><% } %> -
Syntaxe correcte
code language-none <%@ include option='NmsTracking_ClickFormula' %><% // Parameters expected by Adobe Analytics var pattern = new RegExp("(vistaprint|entryUrl)", 'i') if( $(urlstring).match(pattern) && delivery.FCP == false ) {%>&cid=<%= message.delivery.internalName%>&bid=<%= message.id.toString().toLowerCase()%>&SHPID=<%= message.recipient.factShopper.shopper_id %><% } %>
Pour comprendre où se trouve le saut de ligne supplémentaire, vous pouvez remplacer l’expression Javascript par une chaîne STRING fixe.
| code language-none |
|---|
|
Lorsque l'instance ne récupère pas directement les logs de tracking mais le fait à partir d'un serveur Adobe Campaign Classic distant, les logs sont récupérés via l'appel SOAP GetTrackingLogs défini dans le schéma remoteTracking.
Une option du fichier serverConf.xml permet de définir le nombre de logs récupérés à la fois par l’intermédiaire de cette méthode : logCountPerRequest.
La valeur par défaut de logCountPerRequest étant 1 000, elle peut s’avérer insuffisante dans certains cas. Les valeurs acceptées doivent être comprises entre 0 et 10 000.
Dans Adobe Campaign Classic, un mapping de ciblage est censé être unique en termes de schéma de destinataire par rapport aux schémas de broadlog / trackinglog.
Il n’est pas possible d’utiliser plusieurs schémas de ciblage avec le même schéma trackinglog, car le workflow de tracking ne pourra pas réconcilier les données avec l’identifiant de ciblage.
Si vous ne souhaitez pas utiliser le mapping de ciblage prêt à l’emploi avec nms:recipient, nous vous recommandons les approches suivantes :
-
Si vous souhaitez utiliser une dimension de ciblage personnalisée, vous devez créer un schéma broadLog/trackingLog personnalisé en utilisant nms:broadlog comme modèle (par exemple, nms:broadLogRcp, nms:broadLogSvc,etc.).
-
Si vous souhaitez utiliser le trackingLogRcp/broadLogRcp prêt à l’emploi, la dimension de ciblage doit être nms:recipient et la dimension de filtrage peut être un schéma personnalisé.