![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Puede ser una buena idea pero no te parece Poliburro que podria haber mucha redundancia de datos, sin contar que por cada tabla habria que hacer eso, seria mejor crear esa tabla pero solo que tenga el valor anterior ,no el actual pues ya esta en la tabla correspondiente.y que se vaya insertando a estatabla todo el el historial....
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7 |
|
#2
|
|||
|
|||
|
Hola...
Cita:
Ahora, si necesitas que sea más de una tabla, podrías indicar a que tabla pertenece ese valor, además de que también tienes que identificar a que registro de esa tabla pertenece ese cambio. Podrías hacer una estructura así: Código:
id: integer (campo clave) tabla: varchar(32) id_registro: integer campo: varchar(50) valor_anterior: varchar(1024) valor_nuevo: varchar(1024) fecha: datetime usuario: varchar(10)
Saludos... |
|
#3
|
||||
|
||||
|
Disculpen que me entrometa, se que no voy a decir algo demasiado nuevo, pero me parece que cuando se trata de logs o bitácoras debe tenerse en cuenta la dimensión de lo que se desea realmente.
¿Se va controlar todo lo que se opere?¿O por el contrario sólo una parte? Esto puede influir en el modo de como diseñar la/s tabla/s. En ciertas ocasiones basta con tener una única tabla en donde se identifique: 1. Hora y fecha 2. La acción realizada 3. La tabla donde se realizó la acción. (si corresponde) 4. El campo donde se realizó la acción. (si corresponde) 5. El valor nuevo (si corresponde) 6. El valor viejo (si corresponde) 7. El usuario 8. Etc... Pero si se necesita de un diseño exquisito o mucho más elaborado, es muy probable que en vez de esta única tabla existan muchos más. Es más, como ya he indicado en otras ocasiones... se puede caer en la idea de añadir un 50% más de tablas. En fin todo dependerá de los requisitos, de las restricciones, y hasta puede que existan leyes que influyan y/o determinen que, como, y/o cuando guardar en una bitácora. Lo que hay que preguntarse en este momento es ¿Para qué o con qué propósito añadimos está bitácora o log? ¿Quíen la usará? O mejor dicho: ¿Cómo se definirán los perfiles de acceso a la información? A lo que voy es que debe dimensionarse la realidad del negocio. Si es para el negocio de la esquina, no vale la pena romperse demasiado la cabeza... si es para un sistema bancario, mejor tomarse algunas aspirinas ![]() .Saludos, |
|
#4
|
||||
|
||||
|
Gracias a todos por darme ideas sobre el asunto.
La idea de hacer una bitacora o log no es para un pequeño sistemita hecho segun mi criterio(empiricamente), sino para poder implementarlo como dije en un Sistema de Informacion que estoy haciendo.(para los que no entiende que es un sistema de informacion)Es un Sistema completo bien detallado,documentado,con casos de usos,modelo de negocio, modelo de dominio,diagramas de secuencias,diagramas de flujo de la informacion,etc,en fin un sin numero de informacion documentada, donde lo que esta escrito en papel debe coincidir con el Sistema (Aplicacion Grande). Osea no es Hacer por hacer sino seguir una medologia para la implementacion de tu sistema donde requieres de muchos datos. ![]() Espero haber sido claro....Gracias por sus respuestas... Pero si alguien puede agregar mas ,seria bien recibido por mi parte Saludos... ![]()
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7 |
|
#5
|
|||
|
|||
|
Bueno, yo he implementado un sistema enerico de auditoria para mis aplicaciones donde se guarda la información de los campos sensibles, es decir, campos donde se requiere conocer que ha he hecho un usuario especificamente.
Se guarda la informacion de nombre de la tabla, usuario, fecha y hora del cambio, valor del identificador de la tabla, valor anterior del campo, valor nuevo del campo (cuando es un update). No es razonable guadar la información de todos los cambios que hagan todos lo usuarios, solamente los cambios a los campos sensibles, aun asi en muchos de los sistemas que he desarrollado la bitacora de auditoria puede crecer a un ritmo elevado, dándose ocasones donde mas del 50& de los registros de la base de datos lo constituye dicho log. La estrucutura de la base de datos es asi:
Elabore un editor grafico para revisar una tabla que campos sensibles tiene y ampliar los campo o quitarlos asi: ![]() El codigo SQL de los triggers lo genero desde el aplicativo Delphi y se almacena en la base de datos directamente.
__________________
Luis Fernando Buelvas T. |
|
#6
|
||||
|
||||
|
Cita:
¿Lo dices por mi? Lo que he señalado con negrita y cursiva, me ha resultado un tanto ofensivo. Muchos aqui seguramente entendemos lo que es. No es necesario venir y dar un cierto aire a prepotencia indicandonos que lo tuyo es bastante grande y complejo. Al menos... esa es la sensación que me queda. Cuando yo expuse esto: Cita:
Lo cierto es que como la ha bien señalado el compañero lbuelvas lo importante no es llevar un log de toda la información sino de la más sencible y la que requiera de cierto control de auditoría. La forma más usual de implementarla es mediante triggers que registren la información de las operaciones necesarias a monitorear. Creo que el ejemplo de lbuelvas así lo demuestra. Cuanto más grande sea el proyecto, y más sencible y crítica sean los datos a guardar más complejo será el proceso de auditoría y el manejo del log. Como he dicho antes, el diseño puede ser lo bastante simple como para tener una simple tabla y unos cuantos triggers que escriben en ella como puede ser lo suficientemente complejo como para que su diseño pueda ser considerado un proyecto entero. Es decir: lo enormemente complejo como para requerir su propios recursos (tiempo, dinero, personal, etc). Estimativamente se puede llegar (en una situación extrema) a decir que para un sistema grande, complejo, bien documentado, con debidos procesos de auditoría, etc... puede requerir de hasta un 50% más de tablas. Es decir, por ejemplo, que si inicialmente el diseño consta de 50 tablas... añadir los procesos de auditoría podría llegar hasta añadir otras 25. Lamentablemente el tema puede ser bastante ambiguo. Aqui se te hanpresentado de forma simple como puede llevarse a cabo la actividad. Sin conocer la magnitud a la que te enfrentas muy difícil que podamos asesorarte y decirte si con dos tablas, 5 disparadores, 3 procedimientos almacenados te basta, o por el contrario serán necesario contar con 50 tablas, 6 disparadores por cada tabla, y 10 SP (estoy dando una cifra exagerada para que se entienda). La pregunta que deberíamos hacerte (y que debes hacerte) es ¿Que tanto deseas auditar? Puedes imaginarte que por cada tabla que tengas, son posibles como mínimo 6 procesos a "disparar": 1. Antes de insertar un registro 2. Después de insertar un registro 3. Antes de borrar un registro 4. Después de borrar un regitro 5. Antes de actualizar un registro 5. Después de actualizar un registro Dije mínimo puesto que hay posibles algunos efectos en cascada y pueden intervenir otras acciones. Imagínate ahora llevar una bitácora que controlo TODO. Como lo ha dicho lbuelvas: sólo el registro de la bitácora se llevará el 50% de los datos. ¿Entiendes la magnitud de lo que se ha hablado? Saludos, |
|
#7
|
||||
|
||||
|
Gracias amigos foristas, me han dado muchas ideas para hacerlo ,bueno mi sistema de informacion no es muy grande pero tampoco pequeño, segun mi diagrama de clase he podido obtener unos 30 casos de usos y unas 25 tablas sin contar la bitacora, para los que me entienden esto puede desmenusarse aun mas ,pues por cada caso de uso pueden aparecer aun mas todabia. La verdad enfrentarse con una bitacora es interesante y es verdad hay ser prudente en ese aspecto para guadar solo los datos mas necesarios,pero ya les estare comentando o poniendo algun otro hilo con algun problema con el que me topé.
LA VERDAD QUE ENTRE TODOS APRENDEMOS MUCHISIMOS.... Gracias a todos amigos Y Saludos.... ![]() ![]()
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7 |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| 6:45 bitacora | Caral | La Taberna | 206 | 30-08-2008 16:15:58 |
| tablas para una bitacora | gabrielflowers | Tablas planas | 4 | 28-08-2007 00:01:50 |
| Mostrar ventana con cuaderno de bitácora en programa automático | Ñuño Martínez | Varios | 19 | 23-01-2007 00:11:03 |
| Google despide al empleado que publicaba una bitácora | marcoszorrilla | Noticias | 0 | 09-02-2005 22:27:09 |
| Razones para hacer (o no hacer) ejercicio | Nuria | Humor | 1 | 02-09-2004 13:05:43 |
|