Querying the Audit Log

Managers of a Specify database can enable auditing in their database to audit user behaviors.

Set up

To start auditing has to be enabled. To see if auditing is enabled start by heading to app resources

After that, select Remote Preferences under Global Resources

From there add the line auditing.do_audits=true if it’s not already present

Using the Audit Log

Viewing the audit log for one record

To start go to the chosen record through simple search, query, record set, etc.

After that select the Form Meta (the gear in the top right)

In that dialog press the Edit History button

That pulls up the audit log. This is an embedded query so it will have mappings already selected and will auto run upon pressing the Edit History button.

To see all the fields either Reveal Hidden Form Fields must be checked or they must be unhidden from the Sp Audit Log table in the schema

The given query should look something like this:

And here’s an example of what the results might look like

Even with all fields removed because this is an embedded query the Record ID, Table Num, Field Name, Old Value, and New Value fields will all stay but everything else can be customized

Querying the audit log

To query using the query builder go to Queries in the navigation bar and scroll down to Sp Audit Log

After pressing that there will be a blank adit log query like this

Once again, to see all the fields either Reveal Hidden Form Fields must be checked in the bottom left corner of the query or they must be unhidden from the Sp Audit Log table in the schema

From there just create your query. This works just like any other table you can query on and the different fields are defined below

An example query:

Field Definitions

ID the Sp Audit Log ID

Action shows the action made by the agent (e.g. Update)

Parent Record ID shows the table’s parent ID.

Parent Table Number the table name for the parent table (e.g. collection)

Record Id shows the table’s ID.

Record Version shows the record version (0 = never edited, 1 = 1
revision…)

Table Num is the table name in the database (Collection Object, Taxon, Determination, etc.)

Timestamp Created is the time the record was created.

Timestamp Modified is the time the action was done.

Version shows the number of times the audit log record was edited

Created By Agent allows you to add any agent field to the query.

Relationships:

Fields contains things like the Field Name, the New Value, and Old Value.

  • Field Name the name of the field that was modified
  • Old Value the original value of the field
  • New Value what the value was changed to

Modified By Agent allows you to add any agent field to the query.

1 Like