Introduction

Cette page documente les outils et solutions dont nous disposons actuellement pour contrôler le bon fonctionnement de Moodle.

En plus de ceux/celles-ci, il est peut être intéressant de vérifier la bonne santé du serveur.

Outils Moodle

Plugin Benchmark

Voir Administration, Rapport, Benchmark (https://ecampus.unicaen.fr/report/benchmark/index.php?step=run).

Vérification des réglages

Voir

Administration, Rapport, Panorama de performances (https://ecampus.unicaen.fr/report/performance/index.php) ⇐ les réglages

Administration, Rapport, Modification de configuration (https://ecampus.unicaen.fr/report/configlog/index.php) ⇐ les modifications de réglages récentes

Statistiques depuis la table des logs

On peut faire des statistiques, même à posteriori, à partir des données dans la table des logs (mdl_logstore_standard_log)

Analyse des connexions

Les événements à surveiller ont les caractéristiques suivantes :

action = 'loggedin' target = 'user'

Quelques requêtes

Par exemple, le nombre d'utilisateurs s'étant connectés (une ou plusieurs fois), chaque heure :

SET @DATE1 = UNIX_TIMESTAMP('2018-10-09 00:00'); SET @DATE2 = UNIX_TIMESTAMP('2018-10-19 00:00'); SET @grain = 13; -- 13 = '... 00' donc heures incluses -- 15 = '... 00:0' donc heures + dizaines de minutes SELECT creneau, COUNT(userid) FROM ( -- personnes connectées par heure SELECT SUBSTR(from_unixtime(l.timecreated), 1, @grain) AS creneau, l.userid FROM mdl_logstore_standard_log l WHERE l.timecreated > @DATE1 AND l.timecreated < @DATE2 AND l.`action` = 'loggedin' AND l.target = 'user' GROUP BY SUBSTR(from_unixtime(l.timecreated), 1, @grain), l.userid ) AS connectes GROUP BY creneau ORDER BY creneau ;

Autre requête, moins pertinentes, le nombre d'événements de connexion chaque heure :

Si un utilisateur est déconnecté 3 fois et se reconnecte aussitôt, 4 connexions seront comptées.
SELECT SUBSTR(from_unixtime(l.timecreated), 1, @grain) AS creneau, -- COUNT(l.id) AS nb_connexions FROM mdl_logstore_standard_log l WHERE l.timecreated > @DATE1 AND l.timecreated < @DATE2 AND l.`action` = 'loggedin' AND l.target = 'user' GROUP BY SUBSTR(from_unixtime(l.timecreated), 1, @grain) ORDER BY creneau ;