# Architecture

# Présentation

L'exploitation du module Dashboard dans une application nécessite :

  • la définition des données à visualiser ainsi que leur collecte automatique
  • la création de tableaux de bord et la définition des rôles suffisants pour les consulter
  • la mise en page de ces tableaux de bord

Il ne reste ensuite qu'à intégrer le composant Vue dans une application pour permettre leur consultation à tous les utilisateurs autorisés.

# AP4

Les structures des données qui vont être visualisables sont définies au niveau de la plateforme. Il va falloir définir la liste des métriques que l'on souhaite représenter ainsi que la méthode pour les évaluer, et ce, pour chaque Smart Structure que l'on souhaite étudier.

AP4 est également responsable de la création et de la gestion de la sécurité des tableaux de bord.

# ETL

La collecte des données est déléguée à un ETL. Celui-ci est fourni par @anakeen/dashboard-etl sous la forme d'une application Symfony.

Attention

À partir de la version 2023.1, il fait partie intégrante du module Workers sous le nom de la fonctionnalité DashboardETL.

Pour chaque Smart Structure dont les métriques auront été définies, l'ETL effectue les tâches suivantes :

  • récupération à temps régulier de tous les nouveaux Smart Elements de la Smart Structure,
  • évaluation de ces métriques et chargement du résultat dans une base de donnée dédiée

Le fonctionnement de l'ETL est asynchrone, il est confié à des workers :

  • un worker récupère à temps régulier la liste des Smart Elements modifiés ou insérés depuis la dernière synchronisation
  • x workers évaluent les métriques pour chacun de ces Smart Elements et insèrent le résultat dans la base de donnée dédiée

Informations

Plus de détails sur la mise en place de la supervision de ces workers sont disponibles dans le manuel d'installation.

# Superset

Le rendu et la mise en page des tableaux de bord sont quand à eux confiés à une application Superset.

# Récapitulatif

Architecture du module Dashboard