Módulo profesional para administradores de tiendas PrestaShop
Este módulo está diseñado para administradores de tiendas profesionales que desean tener una visión completa del historial de cambios de todos los ajustes y campos del panel de administración de su tienda PrestaShop.
El módulo complementa el registro estándar de PrestaShop con información ultraprecisa sobre todas las acciones realizadas, incluida información sobre los valores antes y después de guardar todos los valores modificables en el panel de administración de la tienda.
El módulo maneja enormes cantidades de datos y los almacena de manera eficiente en un sistema de reserva de 4 niveles: Redis → Memoria → RAM → Archivo
Funcionalidad
- Sistema fallback de 4 niveles: Redis → Memoria → RAM → Archivo
- Registro de acciones administrativas: añadir, editar, eliminar objetos
- Registro de acciones de la API: identificación de claves de la API
- Interfaz de administración: navegación y filtrado de registros
- Migración automática: secuencias de comandos cron para procesar los registros
- Eficiencia: impacto mínimo en el rendimiento de la tienda
Registro automático
- Objetos: Producto, Categoría, Pedido, Cliente, etc.
- Módulos: instalación/desinstalación
- Configuración: cambios en los ajustes de la tienda
- API: llamadas con clave de identificación



Arquitectura de inicio de sesión
Si uno de los sistemas está deshabilitado o no disponible, el módulo saltará automáticamente al siguiente nivel.
- Redis (mayor rendimiento, recomendado)
RPUSH
de logs a la colaactivity_log
- Procesamiento asíncrono mediante cron
- Tabla de memoria MySQL (alto rendimiento)
- Tabla
Ps_activity_log_buffer
(ENGINE=MEMORY) - Operaciones RAM rápidas
- Tabla
- Buffer en memoria (rendimiento medio)
- Tabla PHP en memoria durante toda la petición
- Flush al final de la ejecución
(shutdown
)
- Archivo NDJSON (fallback)
- Escritura en
var/logs/activity_fallback.ndjson
- Migración vía cron a base de datos
- Escritura en
Estructura del registro
{ "acción": "crear|actualizar|eliminar|configurar|instalar|desinstalar", "object_type": "producto", "object_id": 123, "employee_id": 1, "api_key": "Bearer xyz...", "context": "{"controller": "AdminProducts", "object_name": "Test Product", "product_reference": "REF123", "product_active": "1", "campos_cambiados": "update_detected", "update_timestamp": "2024-01-01 12:00:00", "ip_address": "192.168.1.1", "user_agent": "Mozilla/5.0..." }", "created_at": "2024-01-01 12:00:00" }
Contexto ampliado para diferentes objetos
- Producto:
product_reference
,product_active
- Categoría:
category_active
,parent_category
- Pedido:
order_state
,order_total
- Cliente:
customer_email
,customer_active
- Módulo:
module_name
,module_version
,module_author
,module_display_name
Seguimiento de cambios Antes/Después
El módulo realiza un seguimiento automático de los cambios a nivel de campo utilizando ganchos Before/After:
- Ganchos Antes:
hookActionObjectUpdateBefore, hookActionObjectDeleteBefore
- Ganchos After:
hookActionObjectUpdateAfter, hookActionObjectDeleteAfter
- Definiciones ObjectModel: utiliza
$definition['fields']
para un seguimiento preciso - Detección de cambios: Compara los valores antes y después de la modificación
Ejemplo de contexto de cambios de campo:
{ "cambios_campo": { "name": { "from": "Antiguo nombre del producto", "a": "Nuevo nombre del producto" }, "price": { "from": 19.99, "to": 29.99 }, "active": { "desde": 0, "to": 1 } } }
Visualización de los registros
En el panel de administración, vaya a Parámetros avanzados → Registros de actividad:
- Filtrar por acción, tipo de objeto, empleado
- Búsqueda por fecha, ID de objeto
- Detalles del contexto de cada registro
- Estado del almacenamiento: información sobre los sistemas disponibles
Pruebas unitarias
El módulo está equipado con pruebas unitarias automáticas que hacen que sea muy probable que funcione correctamente en su tienda.
Ejecución de las pruebas
cd modules/pshowlogger vendor/bin/phpunit
Cobertura de las pruebas
- ActivityLogger (singleton, logging, flush)
- StorageManager (fallbacks, operaciones por lotes)
- FileStorage (NDJSON, recuperar, borrar)
- LogMigrator (migración, limpieza)
Supervisión
- Estado de los sistemas de almacenamiento en el panel de administración
- Registros de errores en PHP
error_log
- Métricas de rendimiento en cron scripts
Seguridad
- ID de empleado: recuperación automática desde el contexto de PrestaShop
- Clave API: detección a partir de las cabeceras de autorización
- Escape SQL: todos los datosse escapan de forma segura
- Permisos de archivos: permisos adecuados para los archivos de registro
- Exclusión de clases: posibilidad de excluir clases sensibles (por ejemplo, EmployeeSession)
Requisitos técnicos
- PHP 7.1 - 8.x
- Extensión de servidor ionCube Loader
- Sólo Importador PrestaShop: PHP libxml versión > 2.9.3
- Sólo PrestaShop Facebook Integrator: PHP 7.2 o superior
- Validador de IVA de PrestaShop sólo: PHP SOAP
Más información sobre los requisitos técnicos en la base de conocimientos
Soporte = Actualizaciones + HelpDesk
Obtendrá 90 días (3 meses) de acceso al paquete completo de soporte de PrestaShow.
Actualizaciones de módulos
Los módulos le informarán de las actualizaciones disponibles. Lea el registro de cambios y realice una actualización del módulo con 1 clic directamente desde su tienda.
Panel HelpDesk
Este es el panel donde le proporcionamos ayuda. En el HelpDesk puede informar de problemas, solicitar la instalación gratuita de módulos y actualizaciones, y encargar modificaciones y trabajos de desarrollo individuales.
Ampliar el soport e
Una vez finalizado el soporte, puede utilizar el módulo sin restricciones. Puede ampliar su acceso al soporte en cualquier momento que lo necesite.
Base de conocimientos y FAQ
Gratis para siempre
La base de conocimientos está disponible para todo el mundo. Encontrará documentación sobre el módulo, así como instrucciones, vídeos y respuestas a las preguntas más frecuentes.
Licencia de por vida para el módulo
- Puede utilizar el módulo sin limitación para 1 tienda = 1 dominio.
- Puede utilizar un dominio adicional, por ejemplo, para una copia de desarrollador.
- Por un módico precio puede cambiar usted mismo el dominio para el módulo.
Dominios adicionales para Multitienda
- Todos nuestros módulos son compatibles con PrestaShop Multitienda.
- El soporte para un número ilimitado de dominios para PrestaShop Multitienda requiere la compra del soporte multitienda para el módulo.
Modificación del código
- El código del módulo relacionado con la integración con la tienda y el diseño (.tpl, .css, .js) es de código abierto y puede modificarlo libremente.
- El código fuente del módulo (.php) está encriptado con ionCube y modificarlo anulará la garantía.
Demo - pruebe el módulo
- Puede probar el módulo en nuestra tienda de demostración.
- Encontrará el enlace a la tienda de demostración en la sección superior del sitio web ⬆️.
- Si tiene algún problema con el funcionamiento de la demo, póngase en contacto con nosotros
Todavía no hay entradas.
Por el momento, no hay comentarios de los clientes.