Qu’est-ce que Laravel Telescope
Laravel Telescope est l’outil de débogage officiel qui donne une visibilité sur l’état interne d’une application Laravel. Il enregistre en détail les requêtes, exceptions, requêtes SQL, jobs, logs, e-mails, notifications, opérations de cache, exécutions planifiées, etc. Il s’agit d’un outil de débogage exclusivement destiné à l’environnement de développement local. Pour la supervision en production, utilisez Laravel Pulse ou Laravel Nightwatch.Couches surveillées
Installation
Une fois installé, accédez au tableau de bord à/telescope.
Installation en mode local uniquement (recommandé)
Si votre objectif principal est le débogage en local, il est recommandé d’installer avec
--dev et d’enregistrer manuellement le service provider uniquement en environnement local.telescope:install, retirez l’enregistrement de TelescopeServiceProvider de bootstrap/providers.php.
Puis enregistrez-le manuellement dans la méthode register de App\Providers\AppServiceProvider.
composer.json.
Watchers disponibles
Les watchers collectent la télémétrie lors des requêtes et de l’exécution des commandes. Gérez l’activation et la configuration dansconfig/telescope.php.
Request Watcher
Request Watcher
Enregistre les requêtes, en-têtes, sessions et réponses.
size_limit permet de limiter la taille des réponses enregistrées.Query Watcher (particulièrement important)
Query Watcher (particulièrement important)
Enregistre le SQL, les bindings et le temps d’exécution.
Par défaut, les requêtes de plus de 100 ms sont taguées
Par défaut, les requêtes de plus de 100 ms sont taguées
slow, ce qui est très efficace pour détecter les goulets d’étranglement.Job Watcher
Job Watcher
Enregistre la mise en file des jobs et leur résultat d’exécution.
Exception Watcher
Exception Watcher
Enregistre les exceptions destinées à
report et leurs traces.Log Watcher
Log Watcher
Enregistre les logs de l’application.
Par défaut à partir du niveau
Par défaut à partir du niveau
error, mais on peut abaisser jusqu’à debug via la configuration.Command Watcher
Command Watcher
Enregistre les arguments, options, sortie et code de sortie des commandes Artisan.
Event Watcher
Event Watcher
Enregistre les payloads et listeners des événements dispatchés (à l’exception des événements internes de Laravel).
Cache Watcher
Cache Watcher
Enregistre les hits, misses, mises à jour et suppressions du cache.
Redis Watcher
Redis Watcher
Enregistre les commandes Redis exécutées depuis l’application.
Model Watcher
Model Watcher
Enregistre les événements de modèles Eloquent et, au besoin, le nombre d’hydratations.
Notification Watcher
Notification Watcher
Enregistre les notifications envoyées.
Mail Watcher
Mail Watcher
Prévisualise les e-mails envoyés dans le navigateur et permet de les télécharger au format
.eml.HTTP Client Watcher
HTTP Client Watcher
Enregistre les requêtes HTTP sortantes du client.
Gate Watcher
Gate Watcher
Enregistre le résultat des vérifications d’autorisation Gate / Policy.
Schedule Watcher
Schedule Watcher
Enregistre les commandes exécutées par le scheduler et leur sortie.
View Watcher
View Watcher
Enregistre le nom, le chemin, les données et les composers des vues rendues.
Batch Watcher
Batch Watcher
Enregistre les informations des batchs de queue (jobs, informations de connexion).
Dump Watcher
Dump Watcher
Enregistre la sortie des
dump tant que l’onglet Dump de Telescope est ouvert.Récapitulatif
| Tâche | Configuration recommandée |
|---|---|
| Installation | composer require laravel/telescope --dev |
| Isolation locale fiable | Enregistrement manuel du provider + dont-discover |
| Analyse de performances DB | Exploiter le tag « slow » du Query Watcher (100 ms par défaut) |
Prochaines étapes
Laravel Pulse
Mettez en place un tableau de bord d’agrégation de performance pour la production.
Laravel Nightwatch
Utilisez Nightwatch pour la supervision en temps réel de la production.