RKR Diagnoses: diagnóstico y profiler de rendimiento para PrestaShop
- Un año de soporte técnico y actualizaciones de por vida; desde el segundo año, el soporte se amplía por 27,20 €/año e incluye atender tus ideas de mejora generales del módulo.
- Se renueva sola; la cancelas cuando quieras, sin permanencia.
- Un año de soporte técnico y actualizaciones de por vida; después, el soporte termina (con la suscripción se amplía por 27,20 €/año).
- Un solo pago, sin cobros automáticos.
Una barra en cada página con el tiempo, la memoria, las consultas SQL, los hooks y los errores PHP de la petición, un historial con estadísticas y un modo que desactiva módulos solo para tu navegador. Encuentra qué frena tu tienda sin tocar producción.
Compatible con PrestaShop 1.7.8 a 9.2. Módulo Rekire, probado en tiendas reales.
Diagnóstico y rendimiento
Tu tienda va lenta y no sabes por qué. Deja de adivinar.
Un módulo, una consulta SQL repetida, un hook pesado: cualquiera puede ser el culpable, y sin medir solo te queda ir desactivando cosas a ciegas en producción. RKR Diagnoses pone una barra en cada página con lo que cuesta de verdad esa petición, y te dice quién la está frenando.
/ Ve lo que cuesta cada página, en la propia página
Una barra en el back-office, y en la tienda solo para tu sesión de administrador, con el tiempo de la petición, la memoria, las consultas SQL y los errores PHP. Sin abrir logs ni instalar nada en el servidor para ver lo básico.
/ Historial y estadísticas para no depender de la suerte
Cada petición queda guardada en un historial con filtros por rango, tienda, lentas o con errores. Por defecto se conserva 7 días y tú decides cuánto. Con las estadísticas ves la evolución, los módulos más pesados y las horas en que más errores hay, y así compruebas si un cambio ha mejorado algo o no. El módulo se protege a sí mismo: guarda como máximo 800 consultas por petición.
/ Encuentra el módulo culpable sin romper la tienda
El modo de resolución de problemas desactiva los módulos que elijas solo para tu navegador, con una cookie firmada que caduca a las 2 horas. Tus clientes siguen viendo la tienda de siempre. Apagas, recargas, compruebas si el fallo desaparece y sigues hasta aislar el conflicto. El propio RKR Diagnoses nunca se desactiva a sí mismo.
Pensado para producción. Los valores de las consultas se ocultan por defecto en el historial, los tokens de las URL también, y la barra de la tienda se envía marcada para que ninguna caché de página la guarde y se la sirva a otro visitante.
/ Lo que preocupa
Instálalo, déjalo capturando un par de días y mira primero Hooks y módulos: lo habitual es que dos o tres sean la mayor parte del tiempo.
Compatible con PrestaShop 1.7.8 a 9.2 · PHP 7.1 a 8.4
Desarrollado y mantenido por REKIRE
- Referenciarkrdiagnoses
v1.1.0
Revisión completa de la versión recibida (ZIP «1.0.8», código 1.0.9).
Arreglado
- El texto suelto «Script completado.» salía impreso al final de cada página con la barra (back-office y tienda).
- La barra de la tienda nunca funcionaba: sus datos llegaban escapados por Smarty y se quedaba a cero, y sus acciones AJAX no respondían (en el front PrestaShop solo llama a
displayAjax…()). - Con la captura activa, una excepción sin capturar dejaba la página en blanco con HTTP 200 y sin rastro en el registro: ahora PHP la trata como siempre (500 y «Uncaught …»).
- El override de
Hooky los de base de datos ya no se borran ni se sobrescriben cuando PrestaShop los ha fusionado con el override de otro módulo: salen como «fusionado con el override de otro módulo» y no se tocan. - «Desactivar todos los overrides» (Parámetros avanzados > Rendimiento) quita los overrides de clase en 1.7.8 y 8.x: ahora se detecta y se avisa, en vez de dar los overrides por instalados.
- Tiempos de hooks anidados contados dos veces; el tiempo «por módulo» era el del hook repartido a partes iguales: ahora se mide de verdad dentro de cada módulo (tabla nueva
rkr_diag_module). - La copia de ajustes al duplicar una tienda (multitienda) no hacía nada (
old_id_shop/new_id_shop). - Mensajes de importación con «[1]» sin sustituir.
- La versión de
config.xml(1.0.4) no casaba con la del módulo. Seguridad - XSS: el CSS propio se imprimía sin filtrar dentro de un
<style>en todas las páginas del back-office; ahora se le quita cualquier «<» al guardarlo, al importarlo y al pintarlo. - El historial guardaba el SQL literal (emails, hashes de contraseña, claves de API guardadas en la configuración) y las URL con el token del back-office: los valores se ocultan por defecto (ajuste nuevo «Ocultar los valores de las consultas en el historial») y los tokens siempre.
- La página del módulo y su historial solo los ven los empleados permitidos en los ajustes (superadministradores por defecto); con «todo empleado con permiso en esta pestaña», solo los perfiles que pueden ver la pestaña, y la barra ya no sale al resto del back-office.
- Cookies firmadas atadas a su nombre, a sus datos y a la contraseña del empleado: cambiar la contraseña, desactivar o borrar al empleado las anula; la del panel del front ya no sirve como cookie del modo de resolución.
- Modo de resolución de problemas de verdad por navegador: la lista de módulos viaja en la cookie firmada (antes era global y un administrador apagaba la sesión de otro).
- La barra de la tienda se envía con
Cache-Control: private, no-store, para que una caché de página no la sirva a los visitantes con el SQL y el enlace al back-office. - El «ping» del canal AJAX pide token. Rendimiento
- La captura solo corre para los empleados permitidos (antes, en todas las peticiones del back-office, incluido el login) y nunca en las peticiones de la barra de depuración de Symfony ni en las del propio módulo.
- Tope de consultas comprobado antes de
debug_backtrace()y SQL recortado a 4 KB por consulta. - Las consultas ya no se guardan dos veces por petición;
information_schemasustituido porSHOW TABLESuna vez por petición; purga por lotes en vez de cuatroDELETEpor captura. Otros - Licencia AFL-3.0; logo nuevo; el trait de menú se llama
RkrDiagMenuTrait(una docena de módulos de Rekire traen unRkrBackOfficeMenuTraitdistinto y PHP se queda con el primero que carga). - Traducciones: español, francés, italiano, alemán y portugués.
4 otros productos de la misma categoría
También podría interesarte
Preguntas y respuestas
Todavía nadie ha preguntado nada sobre este producto.
























