Ceci est une ancienne révision du document !
Table des matières
Moodle Load Monitor (tool_moodleload)
Outil d'administration qui expose, par web service, les métriques système de l'hôte qui fait tourner Moodle (CPU, mémoire, charge moyenne). Il est conçu pour corréler, pendant un test de charge, les temps de réponse HTTP mesurés avec la consommation réelle du serveur. Il fournit aussi le point d'entrée côté Moodle de la plate-forme de test de charge MoodleLoad, qui permet de préparer et de piloter des tests sur une instance dédiée.
Guides
- Installation et configuration (à créer)
- Guide d'utilisation du tableau de bord (à créer)
- Appel du web service et réponses (à créer)
- Capacités et services (à créer)
Sommaire des fonctionnalités
- Métriques d'hôte exposées en web service : utilisation CPU (en %), mémoire totale, disponible et utilisée, charge moyenne sur 1, 5 et 15 minutes.
- Fonction
tool_moodleload_get_metrics: accessible en REST, réservée à un jeton dédié et à la capacitétool/moodleload:readmetrics. - Service web dédié « Moodle Load Monitor » (shortname
moodleload_monitor), à affecter à un utilisateur technique. - Provisionnement automatique : création d'un utilisateur technique
moodleloadet d'un jeton de service, valables trois mois. - Tableau de bord d'administration (page d'accueil du plugin) pour visualiser l'état des métriques et du moteur de test.
- Page d'état sous Administration du site / Développement : contrôle du moteur de test et des injecteurs.
- Intégration MoodleLoad : réglages de l'URL du front-end, du jeton, du délai d'attente et de l'authentification HTTP (basique, digest ou automatique) ; l'autorisation d'un test est soumise à une poignée de main signée.
- Contrôles de sécurité du test : activation globale du test de charge, nombre maximal de sessions simultanées, plages horaires autorisées.
- Cache des mesures : durée de vie configurable, pour ne pas solliciter le système à chaque appel.
- Préparation des données de test : création d'une catégorie de cours « Tests de charge », restauration de cours et création en masse d'utilisateurs d'installation (avec colonnes d'inscription).
Mesures exposées
| Métrique | Source | Remarques |
|---|---|---|
| Utilisation CPU (%) | /proc/stat, delta entre deux instantanés | Valeur -1 au premier appel : il faut deux appels espacés d'environ 5 secondes. |
| Mémoire totale, disponible, utilisée | /proc/meminfo | En octets ; -1 si illisible. |
| Charge moyenne (1, 5, 15 min) | sys_getloadavg() | null sous Windows. |
Le système hôte doit être Linux, avec un système de fichiers /proc lisible, pour les mesures CPU et mémoire.
Appel du web service
GET /webservice/rest/server.php ?wstoken=<TOKEN> &wsfunction=tool_moodleload_get_metrics &moodlewsrestformat=json
Le jeton ne doit jamais figurer dans une URL partagée ni dans un document. Il doit être généré pour l'utilisateur technique moodleload ou pour un utilisateur dédié, et révoqué si nécessaire dans Administration du site / Serveur / Services web / Gérer les jetons.
Fiche technique
| Fiche technique | |
|---|---|
| Type de composant | Outil d'administration (admin/tool) |
| Nom | Moodle Load Monitor |
| Nom technique | tool_moodleload |
| Versions | |
| Distribution | Moodle Marketplace |
| Disponibilité | Alpha (MATURITY_ALPHA) : usage de test, non destiné à la production |
| Compatibilité RGPD | Oui |
| Dépendances | Aucune dépendance de plugin. Web services et protocole REST activés. PHP 8.1 ou supérieur. |
Builds
À définir : le plugin n'a pas encore de build publié. Indiquer ici les archives téléchargeables (version, date, compatibilité Moodle) lorsque la distribution sera décidée.
Crédits
Développé par Valery Frémaux (ActiveProLearn) pour l'outil MoodleLoad sur la plate-forme Moogwai.
