Outil de profilage

Exemple d'outil utilisé pour résoudre des problèmes de page anormalement longue. Fait remonter les problématiques aussi bien structurelles que d'usage. Permet l'optimisation en action préventive.

Prérequis

Capacité d'analyse des résultats par une bonne connaissance du code Moodle

profilage

Point d'entrée du script de profilage à exécuter Developpement/profilage

Exemple mod/pdcertificate/view.php

lancement

Appel de l'url incriminée avec suffixe d'url : &PROFILEME=1

Exemple http://monmoodle.com/mod/pdcertificate/view.php?id=7157&PROFILEME=1

Profilages

Accès aux journaux de profilages exécutés

Afficher les détails du profilage

Repérer les fonctions gourmandes en ressources

Descendre dans le niveau de détail

Corriger le code

nota: journaux exportable au format propriétaire Microsoft Visual Fox Pro (extension .mpr)

Use case

Une lenteur d'accès de presque deux minutes est signalée sur l'accès au composant Certificat pro par le client. Cette lenteur est récurrente sur l'instance pour tous les usagers.

On profile le composant PDcertificate

Dans la copie écran ci dessous, le journal de profilage fait apparaitre plus de 35000 requêtes à la fonction TCPDF::getGDGamma, et des requêtes liées au composant use_stats

On descends dans le détail de la fonction TCPDF::getGDGamma pour plus de détails.

On analysera de la même manière pourquoi des requêtes sont liées au composant use_stats. Il ressortira que le certificat invoque les temps passés par l'utilisateur dans tous les cours en examinant les logs de session des utilisateurs, pour pouvoir faire en sorte qu'il y ait cohérence entre le composant use_stats et le certificat si la balise { info_course_time} est appelée dans le certificat. (Suite à demande fonctionnelles de clients).

Mesure corrective développées

le composant certificat examine désormais si le certificat utilise la balise { info_course_time} , si ce n'est pas le cas, il ne balaye pas les logs. Des préconisations d'usage des images sont fournies au client pour le certificat, et mise en oeuvre d'un bridage de l'upload image sur le composant PDcertificate.

Résultats techniques

Après modification, une passe de vérification fait ressortir la fin des appels en surnombres à la librairie TCPDF et la fin de l'invocation du composant Use_stat lors de l'utilisation du PDCertificate.

Résultat d'usage

L'accés à l'instance du composant CertificatPro est immédiate pour les usagers.

Crédits documentation/usecase : Florence labord (florence@activeprolearn.com) - Valéry Frémaux (valery@activeprolearn.com)

Retour index Qualité de service - Sommaire des autres documentations - Revenir à l'index des plugins - Revenir au catalogue