Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

API Analytic sur les actions personnalisée et la performance de la collecte des éléments DSFR #1048

Open
lowzonenose opened this issue Nov 23, 2024 · 1 comment
Labels
évolution Nouvelle fonctionnalité ou requête

Comments

@lowzonenose
Copy link

Décrire le bug

L'utilisation de l'API Analytic en collecte des actions produit des soucis de performances sur l'affichage de la page.

Les étapes pour reproduire le bug

En acceptant la collecte Eulerian :
Capture d’écran du 2024-11-23 14-22-42

Le code d'execution dans un contexte d'application VueJS est le suivant :

const eulerian = createEulerian({
  verbose : !isProduction, // option du plugin
  domain: "acwg.cartes.gouv.fr", // OBLIGATOIRE :domaine de tracking Eulerian 
  isActionEnabled: false, // on desactive le tracking global
  site: {
    environment: isProduction ? "production" : "development",
    entity: "IGN"
  }
});

(...)

createApp(App)
  .use(pinia)
  .use(router)
  .use(logger)
  .use(eulerian)
  .mount('#app')

avec un mode VueJS

window.dsfr = {
      verbose: options.verbose,
      mode: "vue"
}

Comportement attendu

Nous souhaitons utiliser l'API Eulerian pour collecter et envoyer uniquement des actions utilisateurs personnalisées que nous avons paramétré. Les actions sur les éléments DSFR ne nous intéressent pas.

Exemple d'action utilisateur personnalisée

/**
 * @description
 * Ajout les attributs Eulerian sur l'element HTML
 * 
 * @example
 * <button id="..." 
 *    class="..." 
 *    title="Calculer une isochrone" 
 *    tabindex="0" 
 *    aria-pressed="false" 
 *    type="button" 
 *    data-fr-analytics-action="Calculer une isochrone" 
 *    data-fr-js-button-actionee="true">
 * </button>
 */

Ceci afin de limiter la collecte trop nombreuse des élément DSFR.
Donc, peut on désactiver la collecte des élément DSFR via une option pour n'autoriser que celles qui sont activés explicitement ?

Capture d’écran

  • sans activation Eulerian
    Capture d’écran du 2024-11-18 17-30-38

  • avec activation Eulerian
    Capture d’écran du 2024-11-18 17-28-57

Le consentement des statistiques produit une collecte de plus de 6000 éléments, pour la plus part des éléments DSFR :
Capture d’écran du 2024-11-23 14-23-24

La charge d'execution des scripts de l'API analytic sur la collecte :
Capture d’écran du 2024-11-23 14-33-37

Configuration et système utilisé

  • Version du DSFR : 1.11.2
  • Appareil (mobile, tablette, desktop) : desktop
  • Système d’exploitation : Linux Ubuntu
  • Navigateur et version : Version 131.0.6778.69 (Build officiel) (64 bits)

Informations complémentaires

Ajouter toute autre information concernant le problème.

@lowzonenose
Copy link
Author

Les performances semblent bien meilleures en activant l'option :
isActionEnabled: "reduce"

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
évolution Nouvelle fonctionnalité ou requête
Projects
None yet
Development

No branches or pull requests

2 participants