Debugging in Laravel kan een zoektocht zijn: waarom is deze request traag? Welke query veroorzaakt een N+1 probleem? Welk job is gefaald? Telescope geeft je antwoorden, visueel en overzichtelijk.
Wat is Laravel Telescope?
Telescope is een officieel Laravel-pakket dat als een soort DevTools voor je applicatie fungeert. Het logt alles wat er in je applicatie gebeurt en toont dat via een webbased dashboard.
Installatie
composer require laravel/telescope --dev
php artisan telescope:install
php artisan migrate
Wil je Telescope alleen in lokale omgevingen? Registreer het conditioneel in AppServiceProvider:
if ($this->app->isLocal()) {
$this->app->register(TelescopeServiceProvider::class);
}
Wat toont Telescope?
Requests
Elke HTTP-request met response status, duration, headers, session data en queries die erdoor worden veroorzaakt.
Queries
Alle uitgevoerde SQL-queries met duur en stacktrace. N+1 problemen springen direct in het oog.
Jobs
Lopende, wachtende en mislukte jobs met argumenten en stacktraces.
Logs
Applicatielogs gecentraliseerd in het dashboard.
Events, mails, notifications
Alle gefirde events, verstuurde e-mails en notificaties — inclusief de inhoud.
Praktische debugging tips
Als je een trage pagina hebt, open je de Telescope request-detail en kijk je naar het aantal queries. Vijftig queries voor een paginaload is een signaal voor eager loading.
// Zonder eager loading: N+1 probleem
$orders = Order::all();
foreach ($orders as $order) {
echo $order->customer->name; // Extra query per order!
}
// Met eager loading: 2 queries
$orders = Order::with('customer')->get();
Productie gebruik
Telescope is bedoeld voor development en staging. In productie is het een securityrisico en performance-overhead. Gebruik Laravel Horizon voor queue-monitoring in productie.
Conclusie
Telescope is onmisbaar in elk Laravel ontwikkeling project. Combineer het met Horizon en Pulse voor volledig inzicht in je applicatie. Bij Meesy zetten we Telescope standaard op in development-omgevingen. Wil je een robuuste Laravel-applicatie? Laten we praten.