PHP: Installare XDebug e WebGrind per debugging e profiling

Xdebug è un’estensione PHP creata da Derick Rethans, uno degli sviluppatori core di PHP. Webgrind è un frontend Web di profilazione Xdebug in PHP5. Implementa un sottoinsieme delle funzionalità di kcachegrind, si installa in pochi secondi e funziona su tutte le piattaforme.

Vediamo come installare Xdebug su Debian:
apt-get install php-xdebug

Attiviamo Xdebug modificando il file /etc/php/7.0/mods-available/xdebug.ini ed aggiungendo le seguenti direttive:
xdebug.default_enable=1
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/tmp/

con la precedente configurazione, Xdebug verrà eseguito per tutti gli scripts PHP eseguiti. Se invece volete limitare l’attivazione solo per alcuni script, bisogna usare questa configurazione:
xdebug.profiler_enable_trigger = 1
xdebug.profiler_enable=0
xdebug.profiler_output_dir=/tmp/

e poi richiamare gli script sempre con il parametro XDEBUG_PROFILE (sia in GET che in POST), es lll.site.ext/prova.php?XDEBUG_PROFILE

In caso di php-fpm riavviare PHP, altrimenti riavviare Apache:
service php7.0-fpm restart
service apache2 restart

Ora installiamo WebGrind.
Ci spostiamo nello spazio web che vogliamo usare per ospitare WebGrind e poi:
get https://github.com/jokkedk/webgrind/archive/master.zip
mv master master.zip
unzip master.zip

Per un debug “al volo”, ricordatevi che PHP ha anche un server interno che può essere usato se avviato con:
php -S0.0.0.0:8080
all’interno della cartella con gli scripts PHP.

Per poter generare/visualizzare anche il grafico delle chiamate, installare anche:
apt-get install graphviz

Bene, ora potrete richiamare il vostro WebGring e dal menù in alto a sinistra scegliere lo script per cui visualizzare i dettagli.

enjoy!

Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario 🙂



Taggato su: , ,

Commenta