| |
| — | profilage [2025/10/15 10:32] (Version actuelle) – créée - modification externe 127.0.0.1 |
|---|
| | <html><!-- nomoodle --></html>{{ :blocks:logo-apl.png?nolink |}}<html><!-- /nomoodle --></html>====== 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 |
| | |
| | {{ :profilage.png?nolink |}} |
| | |
| | |
| | ==== 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 |
| | |
| | {{ :profilages.png?nolink |}} |
| | |
| | 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 |
| | |
| | |
| | {{ :profilages-details-debut.png?nolink |}} |
| | |
| | On descends dans le détail de la fonction TCPDF::getGDGamma pour plus de détails. |
| | |
| | |
| | {{ :profilages-details-niveau2-.png?nolink |}} |
| | |
| | |
| | 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. |
| | |
| | {{ :profilages-details.png?nolink |}} |
| | |
| | |
| | Crédits documentation/usecase : Florence labord (florence@activeprolearn.com) - Valéry Frémaux (valery@activeprolearn.com) |
| | |
| | |
| | ------------------------- |
| | <html><!-- nomoodle --></html> |
| | |
| | [[:qaindex|Retour index Qualité de service]] - [[:other|Sommaire des autres documentations]] - [[:Plugins|Revenir à l'index des plugins]] - [[:start|Revenir au catalogue]] |
| | |
| | <html><!-- /nomoodle --></html> |
| | |
| | |
| | |
| |