A FIELD GUIDE TO LARAVEL · VOLUME II · THE ECOSYSTEM
ENTRY II.18 · DEBUGGING
Telescope
Laravel\Telescope · Package · first recorded 23 October 2018, v0.1.0 on Packagist
A debug assistant for local development. It records each request, query, job, mail, exception and dump into your own database and shows them at /telescope, so the question is answered by looking rather than by adding log lines.
Specification
Kind Package with a dashboard; no resident process, no agent
Interface Watchers hooked to framework events; a dashboard at /telescope
Client A developer's browser, in local or past the viewTelescope gate
Installed by composer require laravel/telescope --dev · telescope:install · migrate
Voice telescope:install · telescope:prune · telescope:publish
Scales by By pruning and filtering; storage grows with every entry recorded
Range Cloud: yes. Cloud defaults APP_ENV to production, so the filter and gate apply
Forge, VPS: yes, the same; prune from the scheduler
Vapor: yes. Entries go to the database, since /tmp lasts only one request
Neighbours
Pulse is the aggregate view, slow queries and busy users over time, and its own docs send you to Telescope for individual events. Nightwatch is the hosted production monitor, with alerts and issues for the team. Telescope records every event into your own database, which suits local development best.
Field marks
TELESCOPE_ENABLED=true
config/telescope.php
TelescopeServiceProvider.php
/telescope
Fig. II.18.1 · One request, recorded
Parts
1 Request. Any request or console command. Each becomes a batch, so its entries are read together on the dashboard.
2 Watchers. Query, job, mail, cache, gate, model and more, each a class you can switch off in config/telescope.php.
3 Filter. Telescope::filter in the provider: everything in local; elsewhere exceptions, failures, scheduled tasks, monitored tags.
4 Entries table. telescope_entries, in your own database. Tagged by model class and user id, so it can be searched.
5 Prune. telescope:prune on the daily schedule drops anything older than 24 hours, unless --hours says otherwise.
6 Dashboard. /telescope, open in local, gated by viewTelescope anywhere else. Set APP_ENV to production or it is public.
Hidden joinery
The dump watcher only records while its tab is open in a browser; otherwise dumps are dropped. The query watcher tags anything over 100 ms as slow, and the threshold is one option. Logs below error are not kept unless you lower the level. A local-only install adds --dev, dont-discover and a provider registered only in local.
Every line checked on 2026-10-08 against the 13.x docs, the 5.x source and stub, and Packagist.
TITLE
Telescope · the local debug tape
SOURCES
laravel.com/docs/13.x/telescope · github.com/laravel/telescope/blob/5.x/stubs/TelescopeServiceProvider.stub · github.com/laravel/telescope/blob/5.x/config/telescope.php · github.com/laravel/telescope/tree/5.x/src/Console · packagist.org/packages/laravel/telescope · laravel.com/cloud/docs/knowledge-base/command-failed-prod-app · docs.vapor.build/resources/storage · laravel.com/docs/13.x/pulse · Monitor 704
STATUS
Verified · 2026-10-08
SHEET
II.18 of 48
REV
A · 2026-10-08
DRAWN
BS
FINISH
All faces, including the back