ilzrv/laravel-slow-query-detector is a Laravel package for laravel slow db query detector.
It currently has 6 GitHub stars and 11.229 downloads on Packagist (latest version v2.1.0).
Install it with composer require ilzrv/laravel-slow-query-detector.
Discover more Laravel packages by ilzrv
or browse all Laravel packages to compare alternatives.
Last updated
This package allows you to detect controller methods in the code that make a lot of queries to the database as well as find very heavy queries.
You can install the package via composer:
composer require ilzrv/laravel-slow-query-detector
By default, the package is already configured and enabled, but you can change the settings if necessary. To publish the configuration file, run:
php artisan vendor:publish --provider="Ilzrv\LaravelSlowQueryDetector\ServiceProvider"
SQD_ENABLEDDetermines whether query listening is enabled.
SQD_CODE_MAX_QUERIESMaximum number of queries when processing the controller method. If your method executes more queries than this value the notification will be received.
SQD_CODE_MAX_TIMEMaximum execution time of the controller method (in ms). If your method takes longer than this value to complete the notification will be received.
SQD_QUERY_BINDINGSQueries with bindings.
If true then bindings will be applied to queries in notification.
Example (if true): select * from users where name = John instead of select * from users where name = ?
SQD_QUERY_MAX_TIMEMaximum execution time for each query in DB (in ms). If at least one query exceeds this value you will receive a notification.
[2020-04-12 06:59:21] production.CRITICAL: Array
(
[SQD] => Array
(
[Execution Time] => 60 ms.
[Queries Count] => 2
[Heavy Queries Count] => 2
[Full URL] => https://example.org/?name=John
[Action] => App\Http\Controllers\HomeController@index
[Heaviest Query] => Array
(
[Query] => select * from `users` where `name` = John
[Time] => 50.67 ms.
)
)
)
The Laravel Slow Query Detector is open-sourced software licensed under the MIT license