fbpx

Utiliser webgrind pour le profiling PHP

webgrind

Webgrind est un outil frontend de profiling pour Xdebug. Il implémente un sous ensemble des fonctionnalités de kcachegrind , s’installe très facilement et est compatible avec toute plate-forme. Il fait l’affaire pour les fix rapides et problemes majeures.

Fonctionnalites

  • simplicité d’installation
  • Détecte le temps passe dans les fonctions par le coût interne et le coût inclusif. Le cout inclusif étant la somme du coût a l’intérieur de la fonction et le coût des appels aux autres fonctions.
  • Affiche si le temps est passé dans des fonctions internes ou dans des fonctions utilisateur.

Installation

Requis

  1. Vous aurez besoin d’un serveur web avec PHP5 installé. webgrind utilise json_encode qui est disponible nativement depuis PHP5.2 ou comme extension PECL avant cette version.
  2. Installez Xdebug si vous ne l’avez pas puisque c’est lui qui effectue le profiling [ http://www.xdebug.org/docs/install

  3. Ajouter les configurations suivantes dans votre fichier de configuration (php.ini ou mieux : conf.d/xdebug.ini) :
    xdebug.profiler_enable=1
    xdebug.profiler_enable_trigger=1
    xdebug.profiler_output_name="cachegrind.out.%t.%p"
  4. Faites un tour sur le site de Xdebug concernant la documentation : http://www.xdebug.org/docs/all_settings

Installation

  1. Telecharger webgrind[ http://webgrind.googlecode.com/files/webgrind-release-1.0.zip ]
  2. Extraire le fichier dans un dossier accessible par votre serveur web.
  3. vous pouvez utiliser webgrind a l’url http://localhost/webgrind, cliquez sur “update” pour charger les fichiers de profiling

Configuration

Webgrind peut être configure en éditant le fichier de configuration config.php. vous pourrez spécifier

  • Le chemin a un répertoire en écriture pour les fichiers cachegrind processés dans : $storageDir. par défaut, le dossier /tmp est utilisé.
  • Le chemin ou webgrind doit trouver les fichiers de profiling (écrits par Xdebug) : $profilerDir. Ceci peut servir si Xdebug n’est pas installe et que vous voulez profiler des fichiers provenant d’un autre environnement par exemple. par défaut, le dossier /tmp est utilisé.

Anis Berejeb

Anis est avant tout un passioné de l'agilité et du développement. Avec plus de 15 ans dans le domaine du développement web, son expertise combine des connaissances accrues dans l'ensemble des notions partant du développement logiciel jusqu'à l'organisation des équipes dans les environnements agiles à grande échelle.

You may also like...