Bienvenidos a un nuevo curso. Ahora estoy en el ciclo de grado superior: Desarrollo de aplicaciones multiplataforma. Y voy a ser parte del experimento de la formación dual. Estaré haciendo practicas durante un año, y a la vez finalizando la formación.

Deseadme suerte.

jueves, 21 de julio de 2016

Log PrestaShop

0

¿Como saber si nuestro modulo esta funcionando o no?

La solución es usar un Log: Aquel mensaje que genera el programador de un sistema operativo, alguna aplicación o algún proceso, en virtud del cual se muestra un evento del sistema.

La función que vamos a usar la puedes encontrar en 
C:\xammp\htdocs\tienda\classes\PrestaShopLogger.php

Y es:
public static function addLog($message, $severity = 1, $error_code = null, 
$object_type = null, $object_id = null, $allow_duplicate = false, $id_employee = null)
{
$log = new PrestaShopLogger();
$log->severity = intval($severity);
$log->error_code = intval($error_code);
$log->message = pSQL($message);
$log->date_add = date('Y-m-d H:i:s');
$log->date_upd = date('Y-m-d H:i:s');

if ($id_employee === null && isset(Context::getContext()->employee) 
&& Validate::isLoadedObject(Context::getContext()->employee))
$id_employee = Context::getContext()->employee->id;
if ($id_employee !== null)
$log->id_employee = (int)$id_employee;

if (!empty($object_type) && !empty($object_id))
{
$log->object_type = pSQL($object_type);
$log->object_id = intval($object_id);
}

PrestaShopLogger::sendByMail($log);

if ($allow_duplicate || !$log->_isPresent())
{
$res = $log->add();
if ($res)
{
self::$is_present[$log->getHash()] 
= isset(self::$is_present[$log->getHash()])?self::$is_present[$log->getHash()] + 1:1;
return true;
}
}
return false;
}

La manera de aplicarla en nuestra código es: 
PrestaShopLogger::addlog('testing Log', 1);

Y para ponerlo en funcionamiento necesitas ir a;
C:\xampp\htdocs\tienda\config\defines.ini.php

Debes buscar:
if (!defined('_PS_MODE_DEV_'))
define('_PS_MODE_DEV_', false);
y cambiarlo a true.

Y debes implementarlo en tu código así:
PrestaShopLogger::addlog('testing Log', 1);

Recuerda que la primera prueba que debes hacer es public function __construct() para saber si tu modulo es leído, ya que el constructor se lee siempre!!

Para ver los resultados debes ir a la base de datos, buscas la tabla ps_log y lo ordenas por la id_log de modo descendiente, te aparecerá el mensaje cada vez que se active tu modulo. 

0 comentarios:

Publicar un comentario

Etiquetas actuales

BD (67) DEF (64) PROG (64) SQL (44) Java (29) PRACTICAS (20) php (18) DI (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) HTML (13) SGE (12) ERP (9) CONSULTAS (8) css (8) Linux (5) XML (5) Android (4) PDM (4) C (3) NetBeans (3) PSP (3) SMARTY (3) comandos (3) HOOK (2) POST (2) XSD (2) cURL (2) JS (1) MEDIA-QUERYS (1) PDO (1) RESPONSIVE (1) TPL (1) TRADUCCIÓN (1) app_inventor (1)

Todas las etiquetas

EJER (78) BD (67) DEF (64) PROG (64) SQL (44) c# (40) Programación (39) Ficheros (36) Java (29) bases de datos (21) PRACTICAS (20) lenguajes de marcas (19) AD (18) Entorno de desarrollo (18) php (18) PROCEDIMIENTOS (17) DI (16) FORM (16) PRESTASHOP (16) PROGRAMACIÓN WEB (16) lenguaje C (16) E/R (14) HTML (13) SGE (12) Sistemas informáticos (10) ERP (9) CONSULTAS (8) TRANSACCIONES (8) TRIGGER (8) VISUAL BASIC (8) css (8) FUNCIONES (7) html5 (6) Ada (5) EXAMEN (5) Linux (5) XML (5) estructuras (5) Android (4) DISEÑO (4) INTERFAZ (4) LOG (4) OpenBravo (4) PDM (4) ACTUALIZAR (3) C (3) DIAGRAMA (3) Directorios (3) NEW (3) NOR (3) NetBeans (3) OLD (3) PSP (3) SMARTY (3) comandos (3) css3 (3) AISLAMIENTOS (2) C++ (2) CONTROLERRORES (2) ELIMINAR (2) HOOK (2) INSERTAR (2) INST (2) MULTITABLA (2) POST (2) RECURSIVIDAD (2) SUBCONSULTAS (2) VISTAS (2) XSD (2) cURL (2) punteros (2) AJENA (1) BLOQUEOS (1) Byte (1) CREACION (1) CRM (1) Configuración (1) Controles (1) Datos (1) GOTFOCUS (1) IMAGENES (1) INDICES (1) JS (1) Lenght (1) MEDIA-QUERYS (1) Mingw (1) MonoDeveloped (1) OPTIMISTA (1) PDO (1) PESIMISTA (1) RESPONSIVE (1) SPEAK (1) Scanner (1) Serializacion (1) Streams (1) System (1) TPL (1) TRADUCCIÓN (1) USUARIOS (1) UseSystemPasswordChar (1) app_inventor (1) char (1) examenes (1) libreoffice (1) make (1) redes (1)