SP:Composant:Debug

De Hegyd Doc.

(Différences entre les versions)
(Fonctionnement)
(Utilisation)
 
(6 versions intermédiaires masquées)
Ligne 5 : Ligne 5 :
Le composant debug permet de debugger plus aisement le code en proposant de tracer les différentes opérations effectuées sur un script.
Le composant debug permet de debugger plus aisement le code en proposant de tracer les différentes opérations effectuées sur un script.
-
Implémenté sur toute les classes métiers,
+
Implémenté sur toutes les classes métiers dédiées à l'éditeur.
 +
 
 +
Utilise la base de la classe Debug du framework V2.
== Implémentation ==
== Implémentation ==
Ligne 17 : Ligne 19 :
== Fonctionnement ==
== Fonctionnement ==
-
La class '''Debug''' propose 3 fonctions qui permettent de tracer les opérations effectuées, montrées dans l'exemple suivant:  
+
Chaque fonction appelable depuis l'object debug se fera selon la syntaxe statique '''Debug::{method}({args});''', et est accessible partout. Aucune initialisation n'est nécessaire au préalable, hormis la configuration qui permet d'activer ou non le debug.
 +
 
 +
=== Tracer les opération effectuées ===
 +
 
 +
3 fonctions permettent de tracer les opérations effectuées, montrées dans l'exemple suivant:  
''Exemple'':
''Exemple'':
Ligne 31 : Ligne 37 :
</pre>
</pre>
Le trio n'est pas obligatoire, mais sert a mieux cibler l'opération effectuée (classe, méthode).
Le trio n'est pas obligatoire, mais sert a mieux cibler l'opération effectuée (classe, méthode).
-
 
-
TODO
 
La fonction ''Debug::trace'' prends n'importe quel type d'argument en paramètre: un tableau, un objet, une chaine de caractères.
La fonction ''Debug::trace'' prends n'importe quel type d'argument en paramètre: un tableau, un objet, une chaine de caractères.
-
== Affichage ==
+
=== Afficher la pile d'élements ===
 +
 
 +
Si le mode est activé, il est possible d'afficher directement la pile de message dans le format souhaité: HTML pour une page web, text pour des scripts de type cron avec la fonction ''Debug::getTrace()''.
 +
Pour ce faire il suffit d'utiliser la fonction ''Debug::setOutputHTML(true/false)'' pour activer ou non le format de sortie HTML.
 +
 
 +
== Utilisation ==
-
Si le mode est activé, il est possible d'afficher directement la pile de message dans le format souhaité: HTML pour une page web, text pour des scripts de type cron. Pour ce faire il suffit d'utiliser la fonction ''Debug::setOutputHTML(true/false)'' pour activer ou non le format de sortie HTML.
+
* S'averera très utile pour avoir un apercu des opérations effectuées par un script donné, es voir on ca coince en cas de problème.
 +
* Utile aussi pour géénérer des rapports de CRON qui pourront être envoyé par mail par la suite.

Version actuelle en date du 7 juillet 2010 à 12:48


Sommaire

[modifier] Debug

Le composant debug permet de debugger plus aisement le code en proposant de tracer les différentes opérations effectuées sur un script.

Implémenté sur toutes les classes métiers dédiées à l'éditeur.

Utilise la base de la classe Debug du framework V2.

[modifier] Implémentation

La classe Debug gère l'ensemble des fonctionnalités du composant.

[modifier] Activation

Le debug est activé dans le cas ou la variable de configuration DEBUG est a true, et que la variable de context clean ne vaut pas 1 (peut être passé en paramètre d'URL).

[modifier] Fonctionnement

Chaque fonction appelable depuis l'object debug se fera selon la syntaxe statique Debug::{method}({args});, et est accessible partout. Aucune initialisation n'est nécessaire au préalable, hormis la configuration qui permet d'activer ou non le debug.

[modifier] Tracer les opération effectuées

3 fonctions permettent de tracer les opérations effectuées, montrées dans l'exemple suivant:

Exemple:

        public function deployFromSite($siteClientId)
        {
                global $db;
                Debug::setClass("SiteClient"); //definit la classe
                Debug::setFunction("deployFromSite"); //defini la fonction
                Debug::trace("deploy content from site (siteClientId)".$siteClientId); // trace qui défini le message
                ...
        }

Le trio n'est pas obligatoire, mais sert a mieux cibler l'opération effectuée (classe, méthode).

La fonction Debug::trace prends n'importe quel type d'argument en paramètre: un tableau, un objet, une chaine de caractères.

[modifier] Afficher la pile d'élements

Si le mode est activé, il est possible d'afficher directement la pile de message dans le format souhaité: HTML pour une page web, text pour des scripts de type cron avec la fonction Debug::getTrace(). Pour ce faire il suffit d'utiliser la fonction Debug::setOutputHTML(true/false) pour activer ou non le format de sortie HTML.

[modifier] Utilisation

  • S'averera très utile pour avoir un apercu des opérations effectuées par un script donné, es voir on ca coince en cas de problème.
  • Utile aussi pour géénérer des rapports de CRON qui pourront être envoyé par mail par la suite.