Every record read or write inside iGene is recorded into an audit log called the changelog. The changelog logs the following information:
iGene performs a logical delete. Data is never actually deleted via the front-end. It is instead hidden by setting the ‘deletedAt’ (date) and ‘deletedBy_id’ (the user) values within the table. There is always a full audit trail of any data in the system changed from either the front-end of via an interface.
It is possible to contact Genial Genetics to fully delete data from a location in iGene. However, this is not audited and it is not recommended.
For each action, the following information is recorded automatically:
In addition to the changelog, every table in the iGene database has a number of fields that record some extra information
Field | Description |
---|---|
createdBy_id | The ID of the user who created the original record |
createdAt | The date/time of when the record was created |
updatedBy_id | The ID of the user who last updated the record |
updatedAt | The date/time of when the last change was made |
deletedBy_id | The ID of the user who deleted the record |
deletedAt | The date/time of when the record was deleted |
The above fields (except deletedAt and deletedBy) can all be used in search filters on the system.
The iGene audit log is accessible on most areas in the application that are editing a single record, for example a patient or referral. Step One: Go to: Patients –> Patients Search/Add –> View. The log is accessible via the changelog button which generally appears at the top of any area alongside any Actions or Print buttons, as shown below:
Step Two: Clicking on this button will reveal the changelog related to the area currently being viewed:
The changelog table lists all changes and view events chronologically (the order can be changed using search filters). The table shows the following:
In the first example, the changelog shows that user Admin made 2 changes to the selected patient at 11:07:52 on the 27th July 2017. Selecting the view button in the table will reveal exactly what was changed.
View events for some areas in the system are also listed as shown below:
Any time a particular area is viewed, an event will be logged and added to the audit log. Selecting the view button will reveal which form was viewed (in this instance the Patient form).
The audit log is saved into the database table Audit. This table can grow very large over time and iGene will attempt to compress the log so it uses less space. The caveat to this approach is that the details of any audit events must be viewed through the application. Compression can be enabled or disabled by editing the iGene config file in the iGene home folder and setting the value indicated below to either (0 = off, 1 = on). The iGene application must be restarted for this change to take effect.
igene.progressiveAuditCompressionTask=0
With compression disabled, the event details are viewable directly as XML in the database, however iGene will format events into a more human-readable form.
Once compression has been enabled, there is no way in the application to later decompress the log by disabling compression again