Gente buenos días, tengo un error al querer modificar las tablas auditadas, cada vez que ingreso en la opción mencionada ninguna tabla me aparece seleccionada, por lo tanto al seleccionar algunas tablas presiono Guardar y em aparece un error que no tengo los triggers para la tabla acc_grupo_acc_x_tipo_usuario, lo creo y luego otro trigger… lo creo y así sucesivamente, cada vez que me pide un trigger me deshabilita los anteriores, no entiendo porqué esta ocurriendo esto.
Me piden triggers de tablas que no quiero auditar, como por ejemplo
trigger “tauditoria_gde_encuestas_pendientes” for table “gde_encuestas_pendientes” does not exist
Dicha tabla no la tengo seleccionada para ser auditada.
Alguna idea? No es mi idea perder los datos que tenemos hasta el momento.
En caso de querer regenerar la auditoría debería ejecutar guarani borrar_auditoria y luego guarani crear_auditoria?
Cuando vas a menú Auditoria => Conf. Log Datos en el Toba Usuarios, y luego haces click en Configurar tablas cada tabla que marques se le activa un trigger con el nombre tauditoria_, cuando desmarcas se desactiva dicho trigger.
Ojo, el comando bin/guarani borrar_auditoria borra el esquema negocio_auditoria mas los triggers en el esquema negocio.
bin/guarani crear_auditoria crea el esquema negocio_auditoria mas los triggers en el esquema negocio.
¿no tenes los triggers tauditoria_acc_grupo_acc_x_tipo_usuario y tauditoria_gde_encuestas_pendientes? Deberían existir y estar asociados a sus respectivas tablas.
Leo, como te comenté al querer seleccionar las diferentes tablas em aparece el cartel de error. Si ejecuto el comando bin/guarani crear_auditoria me debería regenerar todos los triggers?
Si ejecuto el comando bin/guarani crear_auditoria me debería regenerar todos los triggers?
Si, debería, primero te recomiendo que te hagas un backup del esquema negocio_auditoria, igualmente luego el comando te va a hacer la siguiente pregunta:
Desea realizar un backup de los datos de auditoria actuales? (Si o No)
(s/n):s
Responde “s” así tenes el backup.
Contanos si con eso se soluciona y te regenera bien los triggers.
Hice una prueba local y la única forma que me vuelva a crear los triggers fue primero borrando el esquema auditoria (comando bin/guarani borrar_auditoria) y luego creándolo nuevamente (comando bin/guarani crear_auditoria).
Te diría que esto lo hagas primero en un ambiente de pruebas/test y te hagas un backup de la DB.
Leo, otra consulta, otra cosa que nos está sucediendo es que cuando se accede desde el toba_usuarios y presionamos en Actualizar Schema nos destilda todas las tablas y no nos deja actualizar, puede haber algún problema con el toba_usuarios. Me comentan que en Pilaga tuvieron inconvenientes, saben si con Guaraní pasa algo similar?
Leo, otra consulta, otra cosa que nos está sucediendo es que cuando se accede desde el toba_usuarios y presionamos en Actualizar Schema nos destilda todas las tablas y no nos deja actualizar, puede haber algún problema con el toba_usuarios. Me comentan que en Pilaga tuvieron inconvenientes, saben si con Guaraní pasa algo similar?
Si, cuando vas a Auditoría => Conf. Log Datos cuando hago click en Actualizar Schema me desmarca todas las tablas, te adjunto capturas.
El comando bin/guarani crear_auditoria te los vuelve a marcar.
Cuando se activa inicialmente la auditoría se deshabilitan los triggers de algunas tablas (‘mdp_datos_censales’, ‘mdp_datos_personales’, ‘mdp_datos_economicos’, ‘mdp_datos_actividades’, ‘mdp_eleccion_propuesta’, ‘mdp_eleccion_institucion’, ‘jobs’, etc). Hoy, si se ejecuta nuevamente el comando ./guarani crear_auditoria --force 1 para actualizarla se producen errores porque los triggers deshabilitados no se borran (sólo se tienen en cuenta los activos): no se pueden recrear porque ya existen. Esto fue resuelto para la versión 3.21.0. Si les parece, pueden crear una nueva solicitud en el Gestor de Solicitudes haciendo referencia a este post y les parchamos la solución.
Más allá de eso hay algunos puntos a tener en cuenta sobre la auditoría en Guaraní:
No existe un comando para actualizar la auditoría. Es el mismo ./guarani crear_auditoria que cuando ya existe la actualiza.
Si la auditoría ya existe, para actualizarla es necesario agregar el parámetro --force 1 para forzar la eliminación de los triggers que ya existen. Caso contrario va a dar error al querer recrearlos.
El comando no muestra los errores en consola, se visualizan sólo en el log de comandos. El único indicio es que si termina correctamente muestra “OK”.
No es posible actualizar la auditoría desde el botón “Actualizar Schema” de la operación “Auditoría > Conf. Log Datos” del proyecto Toba-Usuarios. Dicha opción no tiene en cuenta los triggers deshabiltados selectivamente en Guaraní, por lo que no los elimina y da error al intentar recrealos.
Sí, borramos la base de auditoría y la volvimos a crear tal cual lo que menciona acá, pero al intentar guardar luego de seleccionar las tablas que se desean auditar aparece el siguiente mensaje:
SQLSTATE: db_42704
CODIGO: 7
MENSAJE: ERROR: trigger “tauditoria_acc_grupo_acc_x_tipo_usuario” for table “acc_grupo_acc_x_tipo_usuario” does not exist
SQL: ALTER TABLE negocio.acc_grupo_acc_x_tipo_usuario DISABLE TRIGGER tauditoria_acc_grupo_acc_x_tipo_usuario;
No estamos intentando actualizar el esquema, sino que intentamos seleccionar las tablas que se van a auditar, desde toba usuarios, así dice la documentación.
El botón de actualizar esquema nunca lo tocamos, no lo menciona en la documentación, solo menciona seleccionar las tablas a auditar.
Ustedes crearon la auditoria ahora utilizando el comando ‘./guarani crear_auditoria’ o ya la tenían en uso y la actualizaron?
Cuando acceden a la operación “Auditoria > Conf. Log Datos” del proyecto Toba-Usuarios y presionan el botón “Configurar tablas” sobre la fila del proyecto “guarani”, acceden a una pantalla donde se muestran todas las tablas del esquema. Están tildadas aquellas que tienen el trigger de auditoría ACTIVADO. Con esta tabla ‘acc_grupo_acc_x_tipo_usuario’ en particular qué pasa? La ven seleccionada y la deseleccionan o cómo es el comportamiento?
Borramos la auditoria y volvimos a correr el comando ./guarani crear_auditoria -f guarani y ahora funcionó sin problemas.
Algo había quedado mal de cuando se había creado anteriormente, me imagino.
Casualmente hemos probado de borrar la auditoría y funcionó (únicamente no guarda los logueos de acceso -logs_aud_login_autogestion-), sin embargo, no lo hemos hecho en producción porque nos gustaría conservar los logs de auditoría anteriores.
¿Cómo lo han resuelto finalmente? Muchas gracias desde ya.-
Hola Javier,
Como indicamos acá, en la versión 3.21.0 se hizo un ajuste para que al actualizar la auditoria se borren los triggers que están deshabilitados, evitando el error que se producía al tratar de recrearlos cuando ya existen.
La actualización de la auditoría no borra los datos existentes.
Saludos, Florencia.