Importation des données de la table des logs standard vers la table de log du flux social


Raoul m’a restauré une copie de la base de données de production au 10 mai 2024. Je dois à présent ajouter les deux tables liées à mon plugin et y importer les données.

L’opération se déroule bien avec le script php suivant :

$connexion = pg_connect("host=$host port=$port dbname=$dbname user=$username password=$password");

if (!$connexion) {
    echo "Erreur de connexion.\n";
    exit;
}

echo "Connexion réussie !";
    
    $sql ="INSERT INTO mdl_logstore_socialflow_log
            (eventid, courseid, contextid, userid, timecreated)
        SELECT
            e.id AS eventid,
            l.courseid,
            l.contextid,
            l.userid,
            l.timecreated
        FROM mdl_logstore_standard_log l
        JOIN mdl_logstore_socialflow_evts e ON
            l.eventname = e.eventname
        WHERE l.timecreated > 1714138160
        ORDER BY l.id";

     $result = pg_query($connexion,$sql);
     if ($result) {
        echo "Commande exécutée avec succès.";
     } else {
         echo "Erreur lors de l'exécution de la commande : " . pg_last_error($connexion);
     }
    pg_close($connexion);

Ma table de log est à présent nourrie avec plus de 987 000 lignes, ce qui est une taille comparable à d’autres tables de Moodle (la table quiz attempts par exemple a une taille de 643 000 lignes).

Je peux à présent tester mes requêtes !

Temps de travail sur la création des tables, le script d’import et cet article : 1/2 jour