Introducción
En oportunidades necesitamos conocer cuando y quienes ingresan al Enterprise Portal.
En O3Server monitorea los ingresos al Sistema, mas no identifica si es por O3Web o por ePortal.
Internamente el liferay genera y mantiene una serie de tablas y en una de ellas se registra el último ingreso de cada usuario al mismo.
Cabe aclarar que estas tablas son originadas y mantenidas por el liferay y no por el O3BI.
Procedimiento
La tabla donde liferay guarda la última sesión es User_ y el campo que indica la última sesión es lastlogindate.
Se recomienda antes de realizar los cambios corroborar que existen la tabla y en la tabla el campo indicado. Al ser algo de liferay entre versiones pueden no existir o existir con distintos nombres y hasta la tabla User_ puede estar vacía.
Crear la tabla dw_user_log con el siguiente formato.
CAMPO | TIPO | TAMAÑO |
---|---|---|
change_id | int4 | 10 |
logdate | date (datetime) | 13 |
userid | int8 | 19 |
companyid | int8 | 19 |
defaultuser | bit | 1 |
contactid | int8 | 19 |
screenname | varchar | 75 |
emailaddress | varchar | 75 |
firstname | varchar | 75 |
middlename | varchar | 75 |
lastname | varchar | 75 |
jobtitle | varchar | 100 |
logindate | date (datetime) | 13 |
loginip | varchar | 75 |
lastlogindate | date (datetime) | 13 |
lastloginip | varchar | 75 |
lastfailedlogindate | date (datetime) | 13 |
failedloginattempts | int4 | 10 |
lockout | bit | 1 |
lockoutdate | date (datetime) | 13 |
status | int4 | 10 |
action | varchar | 75 |
Generar un trigger que cuando se modifica un registro (UPDATE) o se ingresa uno nuevo (INSERT), en la tabla User_; después guardar en la tabla dw_user_log la información del registro.
Scripts de ejemplo:
Base de Datos | Script Crear Tabla | Script Crear Trigger |
---|---|---|
ORACLE | dw_user_log_oracle | user_trigger |