Référence
Dépannage
La plupart des problèmes se voient dans les outils de développement du navigateur en moins d’une minute. Commencez par le mode débogage, puis trouvez votre symptôme ci-dessous.
Commencez par le mode débogage
Ajoutez ?wm_debug=1 à l’adresse de n’importe quelle page, ou data-debug="true" à la balise, et ouvrez la console. Le traceur affiche chaque lot envoyé et, s’il s’arrête, la raison. En mode débogage, il envoie avec fetch au lieu de sendBeacon : la réponse du collecteur est visible dans l’onglet Réseau.
<script defer
src="https://cdn-stg.webmetric.io/v1/b.js"
data-key="wm_w_your_write_key"
data-host="https://in-stg.webmetric.io"
data-debug="true"></script>Symptômes et solutions
| Symptôme | Cause | Solution |
|---|---|---|
Aucune requête vers /e | Le script ne s’est pas chargé, la balise n’a pas de data-key, ou le navigateur envoie Do Not Track ou Global Privacy Control. | Cherchez dans la console un avertissement sur data-key et dans l’onglet Réseau le fichier b.js. Testez avec un navigateur sans ces signaux. |
b.js ou /e échoue avec une requête bloquée | Un bloqueur de publicité ou de contenu dans ce navigateur. | Testez avec le bloqueur en pause. Les visiteurs qui bloquent la mesure d’audience ne sont pas enregistrés, et c’est leur choix. |
403 origin_not_allowed | La page n’est pas sur le domaine du projet ni sur l’un de ses sous-domaines. C’est courant avec les serveurs de préproduction, les aperçus et les adresses de plateforme comme myshopify.com ou webflow.io. | Vérifiez le domaine du projet dans les paramètres. Un site sur un autre domaine a besoin de son propre projet. |
401 unknown_key | La clé d’écriture est mal saisie, révoquée ou appartient à un autre projet. | Copiez de nouveau la balise depuis le panneau d’installation. |
410 project_deleted | Le projet a été supprimé. | Créez un projet et utilisez sa clé d’écriture. |
402 quota_exceeded | Votre organisation a utilisé ses événements du mois et la marge de tolérance. | Passez à un forfait supérieur dans Forfait et utilisation, ou attendez le début du mois suivant. Les données déjà collectées sont conservées. |
429 rate_limited | Trop d’événements d’un même projet en peu de temps. | Souvent du code qui appelle track() en boucle. Cherchez les appels répétés. |
400 invalid_payload | Un lot n’a pas passé la validation. | Utilisez la balise du panneau d’installation. Si vous utilisez le paquet npm, mettez-le à jour. |
Les requêtes répondent 204 mais rien n’apparaît | Le collecteur accepte puis supprime les requêtes des robots connus, des navigateurs qui envoient Do Not Track ou Global Privacy Control, et de vos adresses IP exclues. Il répond de la même manière dans tous les cas, pour qu’un robot bloqué n’apprenne rien. | Testez avec un navigateur ordinaire, depuis une adresse qui ne figure pas dans votre liste d’exclusion. |
| La console indique qu’un script ou une connexion a été refusé | Votre Content Security Policy bloque le CDN ou le collecteur. | Ajoutez les deux sources comme indiqué dans Content Security Policy. |
| La balise est sur la page mais ses attributs data- ont disparu | Une extension de cache ou d’optimisation a réécrit la balise. | Excluez b.js du regroupement, de la minification et du chargement différé, puis videz le cache. |
| Les événements apparaissent avec quelques secondes de retard | Les événements partent par lots toutes les cinq secondes, et quand la page est masquée. | Patientez quelques secondes, ou changez d’onglet pour envoyer le lot. |
| Aucune relecture de session | La relecture ne fonctionne qu’avec les forfaits qui l’incluent, et pas sur les pages avec data-replay="false", ni avec data-replay="consent" avant le consentement. Elle s’interrompt aussi une fois le plafond mensuel d’enregistrements atteint. | Vérifiez votre forfait et ses enregistrements dans Forfait et utilisation, ainsi que les attributs de la balise. |
Quels domaines sont acceptés
- Le domaine du projet lui-même, par exemple example.com, et www.example.com.
- Tout sous-domaine, comme shop.example.com ou staging.example.com.
- localhost et 127.0.0.1, tant que l’option Accepter les événements de localhost est activée dans les paramètres du projet. Elle l’est pour un nouveau projet. Le trafic local compte dans votre utilisation : désactivez-la une fois le site en ligne.
- Les autres hôtes autorisés dans les paramètres du projet : un hôte exact comme partner.example.org, ou *.example.net pour tous les sous-domaines d’example.net. Un joker ne couvre pas example.net lui-même.
- Tout le reste est refusé avec
origin_not_allowed, y compris un autre domaine de premier niveau comme example.co.uk.
Faire passer le collecteur par un proxy
L’envoi des événements via un proxy sur votre propre serveur n’est pas pris en charge. Le collecteur verrait l’adresse de votre serveur pour chaque visiteur, ce qui fusionne les visiteurs et masque leur pays.
Toujours bloqué
Une fois connecté, envoyez-nous un message depuis le tableau de bord. Il inclut pour vous votre organisation, votre forfait et votre projet : décrivez ce que vous attendiez et ce qui s’est passé à la place.