si tu dbms dispone de triggers, puedes colocar uno a cada tabla, de otro modo tendrías que literalmente hacer los inserts a la tabla de auditoria a cada insert del sistema.
en mi caso, en el sistema en el que trabajo tenemos una función que se encarga de verificar los permisos del usuario (con su respectiva tabla en bd) y como prácticamente TODOS los módulos la llaman y además en ella se especifica el modulo en cuestión, allí agregue el insert de auditoria, y funciona de maravillas XD.
otra solución seria el caso de que tu sistema maneje una capa de abstracción de Bases de datos, entonces cada vez que soliciten una consulta, inserción, etc, allí proceses al auditoria.
en conclusión: implementar auditoria es algo tedioso que es preferible planteárselo al momento de desarrollar el sistema, no después