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.