Documentation Index
Fetch the complete documentation index at: https://kawax.biz/llms.txt
Use this file to discover all available pages before exploring further.
What is Laravel Pulse
Laravel Pulse delivers at-a-glance insights into your application’s performance and usage. With Pulse, you can track down bottlenecks like slow jobs and endpoints, find your most active users, and more.Pulse vs Telescope
| Feature | Laravel Pulse | Laravel Telescope |
|---|---|---|
| Purpose | Aggregate trends and metrics across the whole app | Deep debugging of individual requests and events |
| Data | Pre-aggregated metrics | Per-event logs |
| Best for | Production monitoring | Development and staging debugging |
For in-depth debugging of individual events, check out Laravel Telescope.
Data flow
Installation
Once migrations have run, access the Pulse dashboard at the
/pulse route.
Publishing the configuration file
You can publish the configuration file separately to customize recorders and advanced options.Dashboard access
Authorization
By default, the Pulse dashboard is only accessible in thelocal environment.
For production, configure the viewPulse authorization gate in your AppServiceProvider.
Customizing the dashboard
Publish the dashboard view to customize cards and layout.resources/views/vendor/pulse/dashboard.blade.php.
The dashboard is powered by Livewire, so no JavaScript rebuild is required for customization.
cols and rows props.
Recorders
Recorders capture entries from your application and write them to the Pulse database. Configure them in therecorders section of config/pulse.php.
Requests and slow requests
TheRequests recorder captures information about incoming requests.
Configure the slow route threshold (default: 1000ms), sample rate, and ignored paths.
Slow jobs
TheSlowJobs recorder captures jobs that exceed the configured threshold (default: 1000ms).
You can set per-job thresholds using regular expressions.
Exceptions
TheExceptions recorder captures reportable exceptions occurring in your application.
Exceptions are grouped by class and the location where they occurred.
Cache
TheCacheInteractions recorder captures cache hits and misses.
You can normalize similar keys into groups using regular expressions.
Queues
TheQueues recorder tracks queue throughput: queued, processing, processed, released, and failed jobs.
Servers
TheServers recorder captures CPU, memory, and storage usage of your servers.
You must run the pulse:check command on each server you want to monitor.
gethostname() as the server name. Override it with an environment variable.
Users
TheUserRequests and UserJobs recorders capture which users are making requests and dispatching jobs.
This data appears in the Application Usage card.
Redis ingest
For high-traffic applications, you can send entries to a Redis stream and process them asynchronously.pulse:work command to move entries from Redis into the database.
Sampling
For high-traffic applications, capturing every event can result in millions of database rows. Enable sampling to record only a fraction of events. The dashboard scales values up and marks approximations with~.
Environment variables
Key configuration values can be set via environment variables.| Variable | Description | Default |
|---|---|---|
PULSE_ENABLED | Enable or disable Pulse | true |
PULSE_DB_CONNECTION | Database connection for Pulse data | App default |
PULSE_INGEST_DRIVER | Ingest driver (redis, etc.) | storage |
PULSE_SERVER_NAME | Server display name | gethostname() value |
PULSE_SLOW_REQUESTS_THRESHOLD | Slow request threshold (ms) | 1000 |
PULSE_SLOW_JOBS_THRESHOLD | Slow job threshold (ms) | 1000 |
PULSE_SLOW_QUERIES_THRESHOLD | Slow query threshold (ms) | 1000 |
Custom cards
You can build custom Pulse cards to display data specific to your application. Cards are implemented as Livewire components.Pulse::record method.
Summary
| Goal | How |
|---|---|
| Install Pulse | composer require laravel/pulse |
| Access the dashboard | /pulse route |
| Restrict access in production | Define the viewPulse gate |
| Enable server monitoring | Run php artisan pulse:check as a daemon |
| Reduce database load | Set sample_rate on recorders |
Next steps
Error handling
Learn how Laravel handles and reports exceptions.
Logging
Configure and use Laravel’s logging system.