Débogage de Laravel avec Telescope

La surveillance et le dĂ©bogage sont essentiels pour maintenir des applications Laravel robustes, que vous construisiez une application web dynamique ou que vous gĂ©riez des systĂšmes backend complexes. Laravel Telescope, un outil Ă©lĂ©gant pour l’observabilitĂ©, offre une vision approfondie des requĂȘtes, des demandes, des exceptions et plus encore, aidant les dĂ©veloppeurs Ă  optimiser les performances avec facilitĂ©. Lorsqu’il est hĂ©bergĂ© sur les serveurs dĂ©diĂ©s ou VPS haute performance d’ava.hosting, Telescope devient un alliĂ© puissant pour garantir le bon fonctionnement de votre application. Par exemple, si votre application de commerce Ă©lectronique a des requĂȘtes lentes, Telescope peut identifier les appels de base de donnĂ©es inefficaces en quelques secondes. Ce guide vous accompagne dans l’installation, la configuration et l’utilisation de Telescope pour amĂ©liorer les performances de votre application Laravel.

Conditions préalables

Avant de vous lancer, assurez-vous d’avoir

  • Une application Laravel (version 6.x ou supĂ©rieure recommandĂ©e).

  • PHP 7.3 ou plus rĂ©cent.

  • Composer installĂ© sur votre serveur ava.hosting ou sur votre machine locale.

Etape 1 : Installer Laravel Telescope

Pour installer Laravel Telescope, lancez la commande suivante via Composer :

composer require laravel/telescope

Une fois l’installation terminĂ©e, publiez le fournisseur de service Telescope et les actifs en utilisant :

php artisan telescope:install

Enfin, migrer les tables de base de données nécessaires :

php artisan migrate

Étape 2 : Configuration de Telescope

AprĂšs l’installation, Telescope fournit un fichier de configuration situĂ© Ă  config/telescope.php. Vous pouvez personnaliser les paramĂštres selon vos besoins.

Autorisation d’accĂšs

Par dĂ©faut, Telescope n’est accessible que dans l’environnement local. Si vous souhaitez autoriser l’accĂšs Ă  d’autres environnements, modifiez la mĂ©thode gate dans App\Providers\TelescopeServiceProvider:

use Laravel\Telescope\Telescope;
use Laravel\Telescope\TelescopeApplicationServiceProvider;

class TelescopeServiceProvider extends TelescopeApplicationServiceProvider
{
protected function gate()
{
Gate::define('viewTelescope', function ($user) {
return in_array($user->email, [
'admin@example.com',
]);
});
}
}

Conservation des données

Par défaut, Telescope conserve les journaux pendant 24 heures. Vous pouvez ajuster cette durée dans le fichier config/telescope.php:

'retain_hours' => 48,

Configuration de l’itinĂ©raire

Le tableau de bord de Telescope est accessible via /telescope. Si vous souhaitez personnaliser ce chemin, mettez Ă  jour votre fichier config/telescope.php:

'path' => 'monitoring',

Maintenant, Telescope sera disponible dans __CODEBLOCK_a0e069e6fac7784c30d45b70837f6_SAFE__ au lieu de /telescope.

Étape 3 : Utilisation du tĂ©lescope

Une fois configuré, démarrez votre application Laravel et visitez yourdomain.com/telescope (ou votre chemin personnalisé). Vous verrez :

  • RequĂȘtes: Surveille les requĂȘtes entrantes et leur temps de rĂ©ponse.
  • Exceptions: Liste toutes les erreurs et les traces de pile.
  • RequĂȘtes: Affiche les requĂȘtes SQL exĂ©cutĂ©es.
  • Jobs: Surveille les travaux en file d’attente et leur Ă©tat.
  • ÉvĂ©nements: Enregistre les Ă©vĂ©nements Laravel.

Étape 4 : DĂ©ploiement de Telescope en production

Alors que Telescope est utile pour le dĂ©veloppement, il n’est pas recommandĂ© pour la production en raison de la surcharge de performance. Cependant, si vous avez besoin de le dĂ©ployer en production, vous pouvez utiliser la variable d’environnement TELESCOPE_ENABLED:

TELESCOPE_ENABLED=true

De plus, planifiez une commande pour effacer les journaux pĂ©riodiquement afin d’Ă©viter une croissance excessive de la base de donnĂ©es :

php artisan telescope:prune --hours=24

Vous pouvez automatiser cette opération en ajoutant une tùche planifiée dans app/Console/Kernel.php:

$schedule->command('telescope:prune --hours=24')->daily();

Conclusion

Laravel Telescope transforme le dĂ©bogage et la surveillance, en fournissant une visibilitĂ© inĂ©galĂ©e sur les performances de votre application sur les robustes serveurs VPS ou dĂ©diĂ©s d’ava.hosting. Qu’il s’agisse de repĂ©rer les requĂȘtes lentes dans une application web ou de suivre les Ă©checs des tĂąches dans un systĂšme de file d’attente, Telescope permet aux dĂ©veloppeurs d’optimiser efficacement. Par exemple, vous pouvez utiliser TĂ©lescope pour dĂ©boguer un processus de paiement lent sur votre site de commerce Ă©lectronique ou pour surveiller les demandes d’API pour une plateforme SaaS. En suivant ces Ă©tapes et en tirant parti de l’infrastructure fiable d’ava.hosting, vous pouvez exploiter les informations de Telescope pour crĂ©er facilement des applications Laravel plus rapides et plus fiables.