Repolode
halilcosdu

halilcosdu/laravel-slower

Paquete de Laravel que captura consultas lentas a la base de datos, agrupa las repetidas y usa un LLM para sugerir índices y reescrituras, con un panel integrado.

Estrellas
415
Forks
22
Issues abiertos
1
Último commit
hace 19 días

¿Qué es?

Laravel Slower se conecta al listener de consultas de Laravel y registra cada consulta que supera un umbral configurable en milisegundos, junto con sus parámetros, la conexión y la ruta, el trabajo o el comando de artisan que la activó. Las instrucciones repetidas se agrupan mediante una huella digital para que las formas lentas más frecuentes aparezcan primero.

De forma opcional, cada consulta capturada puede enviarse a un LLM (OpenAI, Anthropic Claude, Google Gemini o un modelo autoalojado o personalizado mediante Prism), junto con el SQL parametrizado, el esquema de las tablas, los índices y un plan EXPLAIN de solo lectura. Las recomendaciones sobre índices y reescrituras se guardan y se muestran en formato Markdown. De forma predeterminada, solo el SQL parametrizado sale de la aplicación; para enviar el SQL sin procesar y los parámetros se requiere habilitarlo explícitamente, y estos datos pueden pasar por un redactor.

El paquete incluye un panel independiente en /slower, restringido de forma predeterminada al entorno local. Admite muestreo, límites de capturas por ejecución, trabajos de análisis en cola y eventos para alertas. Se instala mediante Composer y requiere dos pasos de migración.

Funciones clave

  • 01Captura las consultas que superan un umbral configurable mediante un listener DB::listen.
  • 02Agrupa las formas de consulta repetidas por huella digital e indica la cantidad de ocurrencias y sus duraciones.
  • 03Registra la ruta, la acción del controlador, el trabajo o el comando, así como la ubicación en el código que activó cada consulta.
  • 04Envía el SQL parametrizado y el contexto del esquema a OpenAI, Anthropic, Gemini o controladores personalizados para obtener recomendaciones.
  • 05Ofrece un panel integrado con búsqueda, filtros y análisis con IA en un solo clic.
  • 06Incluye muestreo, límites por solicitud y análisis en segundo plano mediante colas.

Casos de uso

  • Encontrar las consultas lentas más frecuentes en una aplicación Laravel durante el ajuste del rendimiento.
  • Obtener sugerencias de índices y reescrituras de consultas sin ejecutar EXPLAIN manualmente para cada instrucción.
  • Alertar al equipo cuando aparece en producción una nueva forma de consulta lenta.
  • Mantener activos los registros de consultas lentas con mucho tráfico mediante muestreo y límites.

Inicio rápido

  1. 1

    Instala el paquete con Composer

    composer require halilcosdu/laravel-slower
  2. 2

    Publica las migraciones

    php artisan vendor:publish --tag="slower-migrations"
  3. 3

    Ejecuta las migraciones y, después, abre /slower en tu entorno local

    php artisan migrate

Antes de usarlo

  • Requiere PHP 8.3 o posterior y Laravel 11, 12 o 13.
  • Las recomendaciones de IA requieren una API key de un proveedor de LLM de pago, y cada análisis es una llamada facturable.
  • De forma predeterminada, el dashboard solo es accesible desde el entorno local hasta que definas un gate viewSlower.

En colecciones

Temas

Preguntas frecuentes

¿Qué es laravel-slower?
Paquete de Laravel que captura consultas lentas a la base de datos, agrupa las repetidas y usa un LLM para sugerir índices y reescrituras, con un panel integrado. Laravel Slower se conecta al listener de consultas de Laravel y registra cada consulta que supera un umbral configurable en milisegundos, junto con sus parámetros, la conexión y la ruta, el trabajo o el comando de artisan que la activó. Las instrucciones repetidas se agrupan mediante una huella digital para que las formas lentas más frecuentes aparezcan primero.
¿laravel-slower es gratuito? ¿Qué licencia tiene?
laravel-slower es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿laravel-slower sigue mantenido?
Mantenimiento activo. El último commit de laravel-slower fue el 19 oct 2026.
¿Para qué puedo usar laravel-slower?
Encontrar las consultas lentas más frecuentes en una aplicación Laravel durante el ajuste del rendimiento. Obtener sugerencias de índices y reescrituras de consultas sin ejecutar EXPLAIN manualmente para cada instrucción. Alertar al equipo cuando aparece en producción una nueva forma de consulta lenta. Mantener activos los registros de consultas lentas con mucho tráfico mediante muestreo y límites.
¿Cómo se instala laravel-slower?
Instala el paquete con Composer: composer require halilcosdu/laravel-slower Publica las migraciones: php artisan vendor:publish --tag="slower-migrations" Ejecuta las migraciones y, después, abre /slower en tu entorno local: php artisan migrate
¿Dónde consigo laravel-slower?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/halilcosdu/laravel-slower

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados