Cible de telemetrie declarative. Pendant cote telemetrie de proxy-url : rend la collecte d'usage visible et retirable dans le HTML, au lieu d'un window.* opaque.

Invisible et opt-in : Ce composant ne rend rien et n'envoie aucun beacon lui-même. Par defaut la telemetrie est desactivee. Poser un <dsfr-data-beacon url="..."> avec un url non vide active la collecte et en designe la cible.

Le probleme resolu

Historiquement, la telemetrie d'usage se pilotait uniquement par des variables globales posees sur window avant le chargement des composants (window.DSFR_DATA_BEACON = true, window.DSFR_DATA_BEACON_URL). Un integrateur qui colle un embed ne voit pas qu'une telemetrie part, ni vers ou.

L'element rend cette intention explicite dans le DOM : un operateur (ministère, etablissement public) peut diriger la collecte vers son propre collecteur sans toucher au JavaScript de la page, et un integrateur peut la retirer en connaissance de cause (argument RGPD / souverainete solide, contrairement a un window.* invisible).

Attributs

AttributTypeFormat / ValeursDescription
urlStringurl="https://collecte.ministere.fr"Domaine de collecte du beacon. Présence avec valeur non vide = opt-in + cible. Vide ou absent = no-op (aucune collecte declarative).

Precedence et opt-in

L'URL de collecte est resolue, du plus spécifique au plus général :

<dsfr-data-beacon url>  >  window.DSFR_DATA_BEACON_URL  >  URL bakee au build

L'opt-in (off par défaut) est acquis si l'une de ces conditions est vraie :

Kill switch : window.DSFR_DATA_BEACON = false neutralise la collecte même si un element est present (coherent avec window.DSFR_DATA_PROXY = false).

Exemples

Telemetrie vers un collecteur souverain

L'element, visible dans la page, active et cible la collecte. Il peut etre place avant ou apres les composants.

<dsfr-data-beacon url="https://collecte.ministere.fr"></dsfr-data-beacon>

<dsfr-data-source id="src" api-type="opendatasoft"
  dataset-id="..." base-url="https://data.gouv.fr">
</dsfr-data-source>
<dsfr-data-chart source="src" type="bar"
  label-field="region" value-field="total">
</dsfr-data-chart>

Retrait par l'integrateur

Pour desactiver la telemetrie, il suffit de retirer la ligne — ou de poser le kill switch :

<!-- Aucune ligne <dsfr-data-beacon> : aucune telemetrie declarative -->

<!-- ...ou neutralisation explicite, même si un element traine ailleurs : -->
<script>window.DSFR_DATA_BEACON = false;</script>

Comportement

Conseils d'utilisation

Transparence d'abord : preferez l'element au window.* opaque pour les embeds destines a des sites tiers — l'integrateur voit la collecte et peut l'auditer.

Self-hosting : pointez url vers votre propre collecteur compatible (endpoint /beacon) pour garder la donnee d'usage chez vous.