The query that is costing you,
and where it runs
Slow queries ranked by what they actually cost you: the time per call multiplied by how often it is called. The one that runs four hundred times at 12ms beats the one that runs once at two seconds.
✔︎ 14-day free trial ✔︎ No credit card required
Queries
-
4,812 38.2s 14ms
select * from `product_variants` where `product_id` = ?
WW whiskerworks.shop GET /collections/{slug} N+1
-
1,206 21.7s 41ms
select * from `orders` where `user_id` = ? order by `created_at` desc
DS driftwoodstays.com GET /api/orders Missing index
-
388 9.4s 31ms
update `inventory` set `stock` = `stock` - ? where `sku` = ?
WW whiskerworks.shop POST /checkout
-
2,940 7.1s 4ms
select count(*) as aggregate from `reviews` where `product_id` = ?
WW whiskerworks.shop GET /collections/{slug} N+1
-
912 2.3s 5ms
insert into `jobs` (`queue`, `payload`, `attempts`, `available_at`) values (?, ?, ?, ?)
DS driftwoodstays.com POST /api/webhooks/mollie
-
18,402 1.9s <1ms
select * from `sessions` where `id` = ? limit 1
WW whiskerworks.shop 14 routes
Every statement, and the ones that cost you
- Queries Every statement, with its calls, total time and p95.
- Slow queries One statement, timed, with the route it runs on.
- N+1 queries The same statement repeated through one request.
- Missing indexes A scan reading far more rows than it returns.
- Cache Hits, misses and writes per key, on every store.
- Low cache hit rates A key prefix missing more than it hits.
N+1s, named
The same query shape repeated inside one request is the signature of a missing eager load. LaraBug normalises the shapes, so bindings do not split one query into thousands, counts the repeats and ranks the endpoints each one runs on, with the bindings on the occurrence when you need them.
Keep reading
- Queues and jobs Know your queue is moving Throughput, failures and the jobs that stall. Explore
- Scheduled tasks The cron that quietly stopped Runs, failures and the schedule that stopped firing. Explore
- Vulnerability scanning (CVE) The CVE in a package you did not know you had Known CVEs in your dependencies, with the fix version. Explore
Catch the next bug before your users do
Two minutes to install, a free plan that stays free, and your data kept in the EU. Teams have trusted LaraBug with their Laravel errors since 2016.