2011-09-06 226 views

回答

4

它完全取决于您的业务需求。有时企业要求记录每个项目的每一项变更(用户和时间)。有些要求,并且每一个单独的数据都被记录下来读取。某些应用程序仅在某些数据类型更改时才会记录这取决于你想要什么。捕获的合理信息是:谁,什么,什么时候...

审计日志本质上通常不是技术性的,打印语句的方式是;你不会从审计日志开始进行调试,尽管你可以在需要时使用它们。但是正常的应用程序日志更适合调试问题,因为它们通常包含堆栈跟踪等等,而审计日志则不包含这些信息。

对于数据库或平面文件,它又取决于。写入数据库特别适用于Hibernate/JPA,因为您可以挂入持久层的事件系统来生成审计事件。这是一个非常自然的映射,因为Hibernate/JPA有'保存','更新','删除'等事件,正是你想要审计的事情。如果需求要求特定类型的用户能够查看日志信息,那么在数据库中使用数据也是有益的。此外,大多数企业定期备份日期,这也保留了审计信息。

另一方面,如果你只需要保留一个记录,你就无法打败平面文件记录的简单性。

相关问题