blocks:usestats:algorithm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
blocks:usestats:algorithm [2019/05/27 12:25]
127.0.0.1 external edit
blocks:usestats:algorithm [2023/01/31 16:46] (current)
Line 1: Line 1:
-===== Modèle de calcul du  block Use Stats =====+<​html><​!-- nomoodle --></​html>​{{ :​logo-apl.png?​nolink |}} <​html><​!-- /nomoodle --></​html>​
  
-Cet article documente sur ce que fait effectivement le bloc Use Stats. ​ 
  
-Le bloc Use Stats est un compilateur de "temps d'​usage"​. Il essaie de déterminer au mieux le temps qu'à passé l'​utilisateur dans les différents contextes de Moodle. ​+===== Block Use Stats (User Time tracking): algorithm=====
  
-Pour se faire, il analyse les traces des utilisateurs,​ et calcule en premier lieu un délai différentiel par rapport à la dernière trace connue du même utilisateur. C'est la fonction de "​tracking"​ des traces standard qui fait ce calcul au fil de l'eau en "​suivant"​ la table de trace standard aussi près que possible. ​ 
  
-==== Les problèmes à résoudre ====  
  
-Les deux problèmes principaux à résoudre dans l'​analyse et la compilation des temps passés sont : +This article is about what the Use Stats block actually "​does"​.
  
-   * Le problème des déconnexions ou rupture de sessions +The Use Stats block is a "usage time" compiler. It tries to determine at best the time spent by the user in the different contexts of Moodle.
-   * Le problème du choix d'​agrégation des temps +
  
-==== Les ruptures de session ====+To do so, it analyzes the user's traces, and first calculates a differential delay with respect to the last known trace of the same user. It is the "​tracking"​ function of standard traces that makes this calculation over water by "​following"​ the standard trace table as close as possible.
  
-La rupture de session est loin d'​être un événement "​explicite",​ marqué par une action duement enegistrée dans les traces d'​usage. L'​observation de la pratique montre en effet que très peu d'​utilisateurs actionnent une déconnexion explicite de Moodle lorsqu'​ils ont terminé leur session d'​usage. Le plus souvent, le navigateur est refermé sur la dernière fenêtre utilisée, ou l'​ordinateur est arrêté par la commande système, lorsque d'​autres événements comme une mise en veille forcée ne sont pas déclenchés. ​ 
  
-Pour cette raison, il est nécessaire de mettre en place un dispositif "​heuristique"​ qui va "​deviner"​ dans quelle condition on doit considérer qu'un utilisateur a quitté la session de travail, par le seul examen des données tangibles dont le bloc dispose : les traces.+====The problems to solve====
  
-==== Approche par keep_alive ====+The two main problems to solve in the analysis and compilation of past times are:
  
-Une nouvelle approche de la résolution de l'​intégrité des ruptures de session a été implémentée sous forme d'un ajout Javascript ​à toutes les pages de Moodle. ​Cet ajout émet une requête automatique ​(toutes les 10 minutes ​par défautentrainant la création d'un événement de trace renseigné du contexte de la page d'où elle est émiseCe dispositif doit être intégré dans le thème ​(par exempledans la partie qui spécialise un pied de page spécifiquesous forme de l'​appel suivant ​+  * The problem of disconnections or break of sessions 
 +  * The problem of choosing time aggregation 
 + 
 +==== Break of sessions ==== 
 + 
 +The break in session ​is far from being an "​explicit"​ event, marked by an action duement recorded in the traces of use. The observation of the practice shows that very few users activate an explicit disconnection of Moodle when they have finished their session of use. Most often, the browser is closed on the last window used, or the computer is stopped by the system command, when other events such as a forced sleep are not triggered. 
 + 
 +For this reason, it is necessary to set up a "​heuristic"​ device that will "​guess"​ in which condition a user must be considered to have left the work session, by examining only the tangible data that the block has: traces. 
 + 
 +====  keep_alive approach==== 
 + 
 +A new approach to resolving break in session integrity has been implemented as a Javascript ​add-on to all Moodle ​pagesThis addition issues an automatic request ​(every 10 minutes ​by defaultresulting in the creation of a trace event filled with the context of the page from which it is issuedThis feature needs to be built into the theme (for examplein the section that specializes a specific footerin the form of the following call:
  
     include_once $CFG->​dirroot.'/​blocks/​use_stats/​lib.php';​     include_once $CFG->​dirroot.'/​blocks/​use_stats/​lib.php';​
     echo block_use_stats_setup_theme_notification();​     echo block_use_stats_setup_theme_notification();​
  
-dans la partie "​footer"​ des "​layouts"​ du thème. 
  
-Une alternative ​est indiquée dans la partie "installation" de cette documentation.+In the footer part of the layouts of the theme. 
 + 
 + 
 +An alternative ​is indicated in the installation ​guide of this documentation. 
 + 
 +At the moment, the "​keep_alive"​ approach does not handle usage situations with many parallel browsers for the same user. 
 +----
  
-A l'​heure actuelle, l'​approche par "​keep_alive"​ ne gère pas les situations d'​usage avec de nombreuses navigations parallèles du même utilisateur. 
  
-[[:​Blocks:​UseStats:​UserGuide|Revenir à l'​index du guide]]+[[:​start|Back to home]] - [[:​plugins|Back to plugin list order by type]] - [[:​Blocks:​UseStats|Back to the component index]] - [[:​Blocks:​UseStats:​UserGuide|User guide]] - [[blocks:​usestats:​technique|Technical index]]
blocks/usestats/algorithm.1558952758.txt.gz · Last modified: 2024/04/04 15:50 (external edit)