Il Debug non è mai stato così semplice con DebugBar

0
196

Quante e quali query sono eseguite in questa pagina? Quale view viene mostrata? E quell’array cosa contiene?
Come sviluppatore, queste domande te le sarai poste chissà quante volte! Certo, di strumenti per il debugging
ce ne sono tantissimi, ma il package di oggi li batte sicuramente in velocità.

DebugBar integra il “fratello maggiore” PHP debugbar in Laravel 5: dopo l’installazione
comparirà nella parte bassa del tuo browser una barra con una serie di informazioni utili per il debug della
tua applicazione. Ecco uno screenshot:

Per installare questo package utilizza composer:

composer require barryvdh/laravel-debugbar

Subito dopo apri il file config/app.php e aggiungi il Service Provider nell’array relativo:

‘BarryvdhDebugbarServiceProvider’,

Incredibile, ma vero: DebugBar è già pronto e funzionante. A te però non basta solo il “semplice da installare”, ma anche “semplice da utilizzare”: usa la Facade di Laravel e aggiungi nello stesso file l’alias seguente:

‘Debugbar’ => ‘BarryvdhDebugbarFacade’,

Questa piccola operazione ti permetterà di utilizzare il package da qualunque punto della tua applicazione.

Infine, correda il package del suo file di configurazione: ci metti poco. Il tuo artisan ha già la solita istruzione bella e pronta:

php artisan vendor:publish

Dopo aver lanciato questa istruzione nella cartella config troverai il file di configurazione di DebugBar.

Questo file contiene una serie di opzioni che puoi attivare/disattivare soprattutto in un’ottica di performance della
tua applicazione. Sì, DebugBar potrebbe rallentare il tuo progetto ed è per questo che lo stesso autore (Barry vd. Heuvel)
suggerisce l’utilizzo del package solo in fase di sviluppo
.

Bene, ritorniamo al codice: vai in un metodo qualunque del tuo Controller preferito e scrivi questo:

Debugbar::error(‘Error!’);
Debugbar::warning(‘Watch out…’);
Debugbar::addMessage(‘Another message’, ‘mylabel’);

Messe così queste istruzioni riempiranno semplicemente di messaggi la tua DebugBar, ma se usate con accortezza, ti permetteranno di tracciare
comportamenti anomali della tua applicazione. Per esempio, se dovessi analizzare il contenuto di un array
ecco l’istruzione pronta all’uso:

Debugbar::info($array);

O, ancora, in un’istruzione try/catch possiamo usarlo in questo modo:

try {
throw new Exception(‘foobar’);
} catch (Exception $e) {
Debugbar::addException($e);
}

DebugBar è attivo di default, ma lo si può disattivare/riattivare anche in runtime con l’istruzione:

Debugbar::disable();
Debugbar::enable();

Un package semplice, ma efficace. Per un debug in runtime senza troppi fronzoli.