Déboguer votre application avec la barre d’outils de débogage de Laravel 5

Déboguer votre application avec la barre d’outils de débogage de Laravel 5

La barre d’outils de débogage de Laravel est avant tout un package développé par Barry vd. Heuvel qui permet de gérer rapidement et facilement votre application pendant le processus de développement de votre application. Elle est facilement installable et fait parti des packages indispensable à connaître.

Installation du package

L’installation est de la barres d’outils de débogage de laravel est relativement simple, on vas commancer avec composer et lancer la commande composer require pour télécharger le package.

bash
composer require barryvdh/laravel-debugbar

Ensuite, ouvrez le fichier config/app.php et à l’intérieur du tableau des Providers, ajoutez :

php
Barryvdh\Debugbar\ServiceProvider::class,

On ajoute ensuite dans le tableaux des Facades son alias :

php
'Debugbar' => Barryvdh\Debugbar\Facade::class,

Et enfin n’oubliez pas de faire la commande suivante :

php
php artisan vendor:publish --provider="Barryvdh\Debugbar\ServiceProvider"

Voilà, vous avez réussi à installer la barre d’outils de débogage de Laravel et tant que votre application est en mode de débogage, la barre s’affiche et montrera des statistiques intéressantes sur la page que vous regardez.

Découvrir les différentes options

Voici l’interface de la fameuse barre d’outils :

laravel-debugbar-01.jpg

Message

Messages est une section qui vous permez d’afficher des messages ou des tests que vous aurez inclus dans un controlleur, des models, …

php
Debugbar::info("Message info !");
Debugbar::error('Message erreur!');
Debugbar::warning('Attention !');
Debugbar::addMessage('Mon Message', 'Mon Label');

Les messages incluent les niveaux PSR-3 (Emergency, Alert, Critical, Error, Warning, Notice, Info, Debug).

Timeline

debug-laravel-02.jpg

La Timeline est pratique pour corriger du code qui limite les performences de votre application. En voici quelques exemples:

php
Debugbar::startMeasure('render','Temps du rendu');
Debugbar::stopMeasure('render');

Debugbar::addMeasure('Lancement Laravel', LARAVEL_START, microtime(true));
Debugbar::measure('Total Utilisateurs', function() {
    $user = App\User::all();
});

Exceptions

L’onglet suivant enregistre les exceptions. Vous pouvez enregistrer des exceptions qui s’afficheront dans la barre de débogage :

debug-laravel-3.jpg

php
try {
  throw new Exception('test');
} catch (Exception $e) {
  Debugbar::addException($e);
}

Views

debug-laravel-07.jpg

Les vues vous montreront tous les modèles parents et enfants avec tous les paramètres passés. Avec cet onglet, vous pouvez être sûr que vous envoyez juste les données dont vous avez besoin:

php
return view('welcome')->with('titre', 'Mon Titre')->with('message', 'Mon Message');

Route

debug-laravel-05.jpg

Pas grand chose à dire, c’est assez clair. Route fait référence à toute les informations liées à votre route, son contrôleur, l’adresse uri utilisé, son préfix, son namespace, etc..

Query

debug-laravel-06.jpg

Les requêtes sont l’une des parties les plus importantes d’une d’application, c’est dans cet onglet que vous aurez les informations relative aux requêtes que vous utilisez vers votre serveur de base de données. Des requêtes mal optimisé ou non souhaité peuvent vraiment allonger le chargement de vos pages et avoir un impact négatif sur vos utilisateurs.

Mail and Request

Ces deux éléments comprennent tout ce que vous devez savoir sur les emails sortants et les requêtes.

···

LaravelPackages

Damien Flandrin Développeur web depuis 2010, créateur de Gekkode et d’Email Impact. Chaque article est testé sur un projet réel avant publication. Contact
Newsletter

Les nouveaux tests, tutoriels et projets, par e-mail.

Tests reproductibles, code versionné, résultats datés. Jamais de spam.