LOG_UI et composant spécifique

LOG_UI et composant spécifique
0
Tags: #<Tag:0x00007f853a7a0578>

Bonjour,

Comment inclure le temps de traitement d’un composant spécifique dans le log_ui ?

Les LOGS UI ne s’appliquent que sur les profils qui ont une casquette d’exploitant, donc pas tous les utilisateurs :

  • param système LOG_UI = yes
  • et responsabilité ADMIN ou OPERATOR

On peut tester en back ce droit via : SystemTool.useClientMonitoring(grant)

Ensuite ce droit est envoyé à la UI pour tracer certaines données via sonde active = ça prend un peu de temps quand la UI sauvegarde en back les statistiques.

Au niveau API tout est dans le verbe $ui.monitor :

/**
 * UI monitoring
 * @param {jQuery} ctn - Container to monitor
 * @param {object} params - Parameters or action
 * @apram {string} params.action  - Action name (get, meta, search, display...) if unset: save and stop monitoring in the container
 * @apram {string} params.service - UI service name (displayForm...)
 * @apram {string} params.target  - Target name (object, view, process...)
 * @param {boolean} params.ui     - Front or Ajax call
 * @function
 */
$ui.monitor = function(ctn, params)

exemple de séquence de monitoring d’un container donné (une div) :

// Init with at least a service name
$ui.monitor(ctn, { service:"displaySearch", action:"meta", target:"MyObject" });
...
// Exemple sSep 1: build something on UI
$ui.monitor(ctn, { action:"display", ui:true });
...
// Step 2: call a JS on UI
$ui.monitor(ctn, { action:"onload", ui:true });
...
// Step 3: call Ajax service
$ui.monitor(ctn, { action:"call", ui:false });
...
// Close the monitoring : no param = save on back
$ui.monitor(ctn);

Il ne peut y avoir qu’un seul monitoring par ctn à la fois.
donc ne pas le mettre sur “body” mais plutôt sur votre composant.
chaque appel peut être placé où on veut et pas nécessairement dans la même méthode.
s’il n’y a pas de “close” final, les métriques ne seront pas remontée en back, ni visibles.