[dev] Audit trailing in Hermes
Vinay Kumar
vinay.kumar at ejyothi.com
Thu Jan 3 07:07:45 UTC 2008
Quoting Chuck Hagenbuch <chuck at horde.org>:
> Quoting Vinay Kumar <vinay.kumar at ejyothi.com>:
>
>> Thanks for the suggestions.
>>
>> Actually we are looking only for EDIT action on time slices . I think
>> logging all actions is good one but not essential now. Since we are
>> doing only the audit trail on EDIT action, duplicating record is a
>> good choice. The edit operations are rare in ideal situation and the
>> table may not grow larger. We would also like to track the changes in
>> all the fields of the timeslice table, so I think that this approach
>> will simplify the design.
>>
>> Kindly share your ideas also, so that we can evaluate the pros and
>> cons of the two approaches.
>
> I strongly object to simply creating duplicate rows in the same table.
> No matter the amount of data that is being duplicated - we have to
> duplicate *some* amount with audit logging - putting the duplicate
> data in the same table makes the data model seriously unclear.
>
> -chuck
Hi all,
Sorry for the delayed response, since we were busy with some
client projects and vacation. We have throughly examined the pros and
cons of the two methods for audit trail. We think that a separate
table for audit trail may make more sense, because the audit
information is normally required by the admins/reviewers and the
normal users may not be interested in the audit log.
Following is the structure of the log table
1. log_id
2. User ID
3. Module -- timeslice/jobtype/deliverable
4. action -- add/update/delete/select
5. log description
6. previous data (serialized)
7. current data (serialized)
8. Modified Timestamp
If a timeslice entry is edited, it will store both the previous and
current data in a serilized string(like that of a datatree table). If
an entry is deleted, it will store only the previous data and if a
new entry is added, then only the current data is used.
Please let me know if you have any questions or suggestions. I would
like to push it for the first stable release of hermes.
Regards,
Vinay Kumar
Programmer Analyst
Ejyothi Services/Ascella Technologies.
More information about the dev
mailing list