Phpstorm e Xdebug + Profiling

29 Giugno 2017

Come al solito due brevi appunti in questo caso su come Debuggare i progetti con Phpstorm + Xdebug attivando anche il profiling tramite i file cachegrid.

Diamo per scontato che Xdebug sia installato sulla vostra macchina di sviluppo in base al sistema operativo che avete. Oltre ad essere installato Xdebug deve essere correttamente abilitato tramite php.ini. Di seguito un esempio di configurazione presa dal file php.ini:

Aggiunte queste righe riavviate il vostro webserver. A questo punto su Phpstorm c’è ben poco da fare. Supponiamo che volete fare debug di un’API REST tramite postman, appendete all’url il seguente parametro nella query string

In Phpstorm abilitare il debug tramite il bottone “Start Listening for PHP Debug Connections”. (immagine prese da jetbrains)

Da rosso diventerà verde

A questo punto Phpstorm è in ascolto, mettete qualche breakpint nel vostro codice e lanciate l’applicazione da Postman (con la chiave nella query string)

Phpstorm si accorgerà della chiamata

E mostrerà le tab per il debug

Potete anche abilitare il profiling aggiungendo al vostro php.ini le seguenti righe:

In un sistema Unix, dopo aver lanciato il debug sarà creato un file cachegrind.out.{format} nella cartella /tmp. Potete aprire questi file con programmi tipo kcachegrind se usate kde oppure con phpstorm tramite Tool -> Analyze Xdebug Profiler Snapshot per vedere tutte le informazioni catturate dal profiler. (Immagini prese da jetbrains)

Vedi anche come debugguare programmi eseguiti da linea di comando


Comments

  1. Marc - 29 Giugno 2017 at 9:53 - Rispondi

    Grazie, davvero molto utile e chiaro


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *