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

🐛 fix(analytics): rĂ©duction d'envoi des donnĂ©es [DS-3626] #807

Merged
merged 3 commits into from
Oct 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion src/analytics/.package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ script:
- display
- table
- tag
- download
example:
style:
- core
Expand Down
38 changes: 15 additions & 23 deletions src/analytics/doc/analytics.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,18 @@

# Analytics

> **Warnning**
> Version Beta
> * Les tests sur les données remontées sont toujours en cours.
Merci de nous informer des problématiques que vous pourriez rencontrer.
> * Les versions précédentes du DSFR sont en partie supportées.
> Le périmÚtre de ce support sera détaillé dans de prochaines versions.
> L’usage avec d’anciennes versions est livrĂ© “AS IS”.


> **Note**
> * Support de IE11
> * Support des SPA (Angular, React et Vue)
> * Tous les composants implémentés
> * Taux de click désactivé par défaut (économie de donnée) et activable via la configuration
> * Opt out complet supporté
> * id requis sur les Ă©lĂ©ments tracĂ©s, l’API remonte les id manquants dans la console
> **Important**
> La propriĂ©tĂ© de configuration `enableRating` a Ă©tĂ© retirĂ©e, celle-ci entraĂźnant des envois de donnĂ©es trop importants. En remplacement, un attribut `data-fr-analytics-rating` peut ĂȘtre ajoutĂ© sur un Ă©lĂ©ment dont on veut mesurer spĂ©cifiquement le taux de click.

> **Warning**
> Ce package est prévu pour fonctionner de maniÚre optimale avec la version dsfr-1.9.0 ou suppérieure.
> L'ajout d'un patch, présent dans `dist/patch/`, permet le support des versions précédentes (à partir de la version dsfr-1.3.0).
> Pour ce faire, importer `dist/patch/patch.module.min.js` et `dist/patch/patch.nomodule.min.js` aprÚs l'élément de configuration window.dsfr.analytics et avant le JS du DSFR.
> Les différents tests effectués semblent montrer un fonctionnement global sans que nous puissions garantir une compatibilité optimale sur ces versions. N'hésitez pas à nous remonter tous problÚmes rencontrés.


Le systĂšme de design apporte avec lui un outil de collecte de donnĂ©es analytics basĂ© sur la solution EulĂ©rian. Ce package, bien que fourni par le DSFR, peut ĂȘtre utilisĂ© indĂ©pendamment de celui-ci via une version standalone.

Ce package est compatible Ă  partir de la version dsfr-1.9.0, pour les versions prĂ©cĂ©dentes l’ajout d'un patch permet unsupport jusqu’à dsfr-1.3.0.


- Analytics
Expand All @@ -29,12 +21,12 @@ Ce package est compatible Ă  partir de la version dsfr-1.9.0, pour les versions
- [class ConsentManagerPlatform](analytics/installation/cmp.md)
- [class Opt](analytics/installation/opt.md)
- [Collector](analytics/collector.md)
- [class Analytics](analytics/classes/analytics.md)
- [class Page](analytics/classes/page.md)
- [class User](analytics/classes/user.md)
- [class Site](analytics/classes/site.md)
- [class Search](analytics/classes/search.md)
- [class Funnel](analytics/classes/funnel.md)
- [class Analytics](analytics/collector/analytics.md)
- [class Page](analytics/collector/page.md)
- [class User](analytics/collector/user.md)
- [class Site](analytics/collector/site.md)
- [class Search](analytics/collector/search.md)
- [class Funnel](analytics/collector/funnel.md)
- [Actions](analytics/actions.md)
- [Actions d’interaction hors composant](analytics/actions/custom-actions.md)
- [Actions sur les composants DSFR](analytics/actions/component-actions.md)
29 changes: 12 additions & 17 deletions src/analytics/doc/analytics/actions.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,28 @@
## Actions

Les actions correspondent aux impressions, aux Ă©vĂšnements, ou aux interaction que l’on souhaite traquer. Le suivi de conversion couvre les besoins suivants :
Les actions correspondent aux Ă©vĂšnements et aux interactions que l’on souhaite mesurer. Le suivi de conversion couvre les besoins suivants :

* Suivi d'action immédiate comme un clic sur un bouton, un téléchargement de fichier, 


* Suivi d'action avec une entrée (début=in) et une sortie (validation=out).
* Suivi d'action avec une entrée (début=in) et une sortie (validation=out) (voir taux d'interaction)

* Captation de paramÚtres associés à cette action comme des textes renseignés ou des cases cochées.

* Possibilité de gérer des séquences de conversion - création d'un funnel étape par étape.

* Les actions d'interaction sont limitĂ©es dans leur envoi Ă  la seule premiĂšre interaction avec l'Ă©lĂ©ment dans la page, sauf si la donnĂ©e associĂ©e Ă  l'envoi change. Par exemple, un bouton particulier dans le menu enverra des donnĂ©es au premier click, puis sera limitĂ©. Si la page change, il enverra de nouveau des donnĂ©es au premier click. Dans le cas d'un composant de recherche, chaque interaction enverra une requĂȘte de recherche diffĂ©rente et passera outre la rĂšgle de limitation. Si la requĂȘte de recherche est identique Ă  la prĂ©cĂ©dente, celle-ci ne sera pas envoyĂ©e.

#### ActionName

Lorsqu’une action est Ă©mise, un actionName est envoyĂ© Ă  EulĂ©rian.
Ce nom d’action est constituĂ© du type d’action, de l’intitulĂ© de l'Ă©lĂ©ment Ă  remontĂ©, de sa hiĂ©rarchie, et de son id.

> **Note**
> **Important**
> ⚠ **Un id est obligatoire sur tous les Ă©lĂ©ments traquĂ©s** (retrouvez les Ă©lĂ©ments du dsfr nĂ©cĂ©ssitant un id dans la colonne “element” du [tableau d'actions des composants du dsfr](actions/component-actions.md)).
>Il est nĂ©cessaire que l’id soit :

> * unique : L’id doit ĂȘtre unique au site, ex:

> * Deux boutons diffĂ©rents ne doivent pas avoir le mĂȘme id, mĂȘme sur des pages diffĂ©rentes

> * Le header peut avoir le mĂȘme id sur toute les pages s’il est identique

> * pĂ©renne : L’id doit ĂȘtre le mĂȘme pour tous les utilisateurs et figĂ© dans le temps.

exemple d’actionName : `(click)_titre_niveau_2_â€ș_titre_niveau_3_â€ș_label_de_l_element_[button-id-1]`
Expand All @@ -34,20 +33,16 @@ exemple d’actionName : `(click)_titre_niveau_2_â€ș_titre_niveau_3_â€ș_label_de
> Les caractÚres suivants `"'<>*$&~`|\?^~` étant restreints par Eulerian, ils sont remplacés par une équivalence en caractÚre fullwidth : [Graphemica | Halfwidth and Fullwidth Forms](https://graphemica.com/blocks/halfwidth-and-fullwidth-forms)


#### Taux de click

L’API analytics utilise des actions pour suivre les interactions de l’utilisateurs dans et en dehors des composants.

Cette fonctionnalitĂ© peut permettre de connaĂźtre le taux d’interaction d’un Ă©lĂ©ment, Ă  savoir le rapport entre le nombre de fois oĂč il a Ă©tĂ© affichĂ© et le nombre de fois oĂč une interaction a eu lieu.
#### Taux d'interaction

L’activation de cette fonctionnalitĂ© se fait d’abord dans le fichier de [configuration](installation/configuration.md) par la propriĂ©tĂ© `enableRating`
L’API analytics utilise des actions pour suivre les interactions de l’utilisateur dans et en dehors des composants.

AprÚs avoir été activée, elle sera automatiquement en place sur les composants qui supportent la fonctionnalité (voir derniÚre colonne dans le [tableau](actions/component-actions.md)).
L'ajout de l'attribut `data-fr-analytics-rating` sur Ă©lĂ©ment particulier permet d'activer la mesure du taux d’interaction sur cet Ă©lĂ©ment, Ă  savoir le rapport entre le nombre de fois oĂč il a Ă©tĂ© affichĂ© et le nombre de fois oĂč une interaction a eu lieu.

> ***Note**
> Cette fonctionnalitĂ© peut entraĂźner un envoi de donnĂ©es trĂšs important, puisque chaque composant permettant de suivre le taux de click enverra la donnĂ©e d’affichage. Il est important de s’assurer de la pertinence de cette fonctionnalitĂ©.
> **Important**
> Cette fonctionnalitĂ© entraĂźne un envoi de donnĂ©e plus important, la donnĂ©e d'affichage Ă©tant automatiquement envoyĂ©e tandis que l'envoi de la donnĂ©e d'interaction se fait Ă  l'intervention de l'utilisateur. Pour rappel, le modĂšle de facturation dĂ©pend du volume d'appels envoyĂ©s Ă  Eulerian et l'envoi de multiples affichages de composants entraĂźne donc une hausse de la consommation de donnĂ©es. Il est important de s’assurer de la pertinence de chaque Ă©lĂ©ment oĂč cette fonctionnalitĂ© est activĂ©e afin d'optimiser l'envoi de donnĂ©es.


- Analytics/Actions
- [Actions d’interaction hors composant](actions/custom-actions.md)
- [Actions sur les composants DSFR](actions/component-actions.md)
- [Actions sur les composants DSFR](actions/component-actions.md)
Loading