Outils pour utilisateurs

Outils du site


utiliser_deux_instances_de_piwik

Utiliser deux instances de Piwik pour un même site

À quoi ça sert ?

Dans une démarche de logiciel libre, on serait tentée de répondre : “à ce qui vous plaît”. On peut néanmoins imaginer deux situations où disposer de deux instances de Piwik qui surveillent le même site peut s'avérer utile.

Test

Celle que nous avons vécue est l'utilisation conjointe de deux configurations différentes afin de comparer les résultats obtenus1). Il aurait également pu s'agir de tester deux configurations de plate-forme hébergeant Piwik, dans un but d'optimisation des ressources, sur un site réel, sans discontinuité de plate-forme de production. Dans ce cas, le Piwik de référence n'est pas touché et l'on peut conduire un analyse comparative dans des conditions d'utilisation rigoureusement identiques.

Double autorité

Lorsque deux (ou plus) entités devant suivre la fréquentation d'un même souhaitent disposer de leur propre instance, pour de bonnes ou de mauvaises raisons, les deux (ou plus) doivent être servies2).

Technique de réalisation

Il suffit d'insérer un code javascipt différent de celui proposé en standard par Piwik. Ci-après un exemple de code qui appelle deux instances :

<!-- Piwik --><script type="text/javascript">
  var _paq = _paq || [];
  _paq.push(['trackPageView']);
  _paq.push(['enableLinkTracking']);
  (function() {
    window.piwikAsyncInit = function () {
        try {
            var piwikTracker = Piwik.getTracker("http://other.domain.tld/piwik.php", 5);
            piwikTracker.trackPageView();
            var piwik2 = Piwik.getTracker("http://prime.domain.tld/piwik.php", 21);
            piwik2.trackPageView();
        } catch( err ) {}
    };
    var u="//prime.domain.tld/";
    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
    g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
  })();
</script><!-- End Piwik Code -->
  • Le contenu du bloc try/catch fait clairement apparaître l'appel aux deux instances ici désignées piwikTracker et piwik2. L'adaptation de ce code à un cas particulier est intuitive. Si besoin, la structure de prête aisément à l'ajout d'instances supplémentaires.
  • À la suite de la fonction anonyme, on constate qu'une seule des instances est utilisée pour récupérer le code piwik.js.
1)
Il s'agissait d'apprécier l'intérêt de la précision des informations de géolocalisation des internautes, dans un contexte donné d'exploitation des statistiques de fréquentation. En gros, confronter le “plus c'est mieux” à un cas réel d'utilisation.
2)
L'implémentation proposée donne un rôle particulier à une des instances de Piwik.
utiliser_deux_instances_de_piwik.txt · Dernière modification : 2016/11/16 15:39 de 127.0.0.1