Skip to content

Artisan Debugging Commands in Laravel Telescope 5.24.0

Laravel Telescope 5.24.0 ships two new Artisan commands — telescope:list and telescope:show — letting you inspect recorded entries, batches, slow queries, and exceptions directly from the terminal without opening the dashboard.

Published · Updated · 4 min read

Artisan Debugging Commands in Laravel Telescope 5.24.0

Laravel Telescope 5.24.0 Adds Terminal Debugging Commands

Released on September 8, 2026, Laravel Telescope 5.24.0 introduces two Artisan commands — telescope:list and telescope:show — that let you read and inspect recorded entries without ever opening the Telescope dashboard. The release also fixes a long-standing UI bug where stale dashboard requests could overwrite the screen you were actively viewing.

telescope:list — Browse Recorded Entries from the Terminal

telescope:list queries Telescope's storage and renders a table of recent entries. Pass an entry type to get type-specific columns:

php artisan telescope:list request

For requests, the table shows the UUID, HTTP method, URI, response status, duration, and creation time. Supported types include query, exception, job, cache, log, mail, command, and outgoing HTTP requests. Omit the type for a mixed summary list.

Filtering and Pagination

Narrow results with built-in filters:

php artisan telescope:list exception --limit=5
php artisan telescope:list request --tag=Auth:42
php artisan telescope:list --batch=79a09461
php artisan telescope:list --family=8e872e9a

Pages default to 20 entries. When a full page is returned, Telescope prints a --before cursor — the sequence ID of the last entry — that you pass to fetch the next set:

php artisan telescope:list request --before=24817

telescope:show — Inspect an Entry and Its Batch

Copy any UUID from telescope:list and pass it to telescope:show to see full entry details alongside every other entry in the same batch:

php artisan telescope:show 9d90e4f0-1a15-4f6a-9cca-2e95d70d8d9f

Telescope groups the work produced by a single request, job, or command into a batch. A request batch can contain queries, cache operations, logs, events, exceptions, and rendered views. In the batch table:

  • SLOW marks queries that exceed Telescope's configured threshold.
  • DUP marks queries sharing an SQL pattern — a quick signal for N+1 query problems.
  • The cache section reports hits, misses, and an overall hit rate.

Shortcuts for the Latest Entry

Skip the UUID lookup entirely with the latest shorthand:

php artisan telescope:show latest
php artisan telescope:show latest:request
php artisan telescope:show latest:exception

This is especially useful for coding agents: make a request, run telescope:show latest:request, and read its queries in one step.

Filtering Batch Output

For large batches, limit the output to specific entry types:

php artisan telescope:show latest:request --type=query,cache

Add --full to print long SQL statements, messages, or payloads that would otherwise be truncated.

JSON Output for Scripts and Coding Agents

Both commands accept a --json flag. telescope:list --json returns a JSON array of entries (or an empty array on no match). telescope:show --json returns an entry object and a chronological batch array.

Combine with jq for quick extractions:

# Get the class, message, file, and line of the latest exception
php artisan telescope:show latest:exception --json \
    | jq '.entry.content | {class, message, file, line}'

# Find recent 500 errors from recorded requests
php artisan telescope:list request --json --limit=50 \
    | jq '.[] | select(.content.response_status >= 500) |
        {id, uri: .content.uri, status: .content.response_status}'

Use --json when another program or agent consumes the output, or when you need exact untruncated values.

Stale Dashboard Requests No Longer Overwrite the Current Screen

Telescope's dashboard polls for new entries continuously. Previously, a request started on one screen could resolve after you navigated away, replacing the current results with data from the old screen. The index, preview, dump, and monitoring screens now use an AbortController to cancel in-flight requests when the component is destroyed or the route query changes. Cancelled navigation requests are silent; only genuine server errors surface a status message.

Key Takeaways

  • telescope:list {type} renders a paginated, filterable table of recorded entries in the terminal.
  • telescope:show {uuid|latest|latest:{type}} displays full entry details and its entire batch.
  • SLOW and DUP batch markers make it straightforward to spot performance issues and N+1 queries.
  • --json output enables scripting and coding-agent workflows without manual UUID copying.
  • Dashboard polling now uses AbortController to prevent stale responses from corrupting the current view.
  • Both commands were contributed by @pushpak1300 in PRs #1763 and #1764.

Source: Artisan Debugging Commands in Laravel Telescope 5.24.0 — Laravel News

Frequently asked questions

What does the telescope:list command do in Laravel Telescope 5.24.0?

telescope:list reads recent entries from Telescope's storage and displays them as a formatted table in the terminal. You can filter by entry type (request, exception, query, job, etc.), tag, batch ID, or family hash, and paginate results using a --before cursor.

How do I inspect the latest request's queries without copying a UUID?

Run `php artisan telescope:show latest:request --type=query`. The `latest` shorthand automatically targets the most recently recorded entry of the specified type, so no UUID lookup is needed.

When should I use the --json flag with telescope:list or telescope:show?

Use --json when you need to pipe the output into another tool (such as jq), consume it in a script, or retrieve exact untruncated values. For interactive inspection, the default table output is easier to read.

Mohamed Said

About the author

Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

About GitHub LinkedIn WhatsApp Email Address My CV

Have a technical challenge?

Tell me what you’re building. I reply within two working days.

Discuss your project