Audit trail
✋ Audit logs are downloaded as a CSV file for Red Pill version 32 and later.
Clicking the Audit log link in the top menu bar displays the audit trail. The most recent 100 lines are shown by default; click the Show all button to see the entire log. The audit trail is a plain text file which can be downloaded if required using the Download button. The log records all significant events and changes to the data including:
- Data entry and editing of forms
- Creation and adding messages to queries
- Creation and editing of sites
- Randomisations
- Unblinding
- Movement of blocks within code lists
- Uploads
- Downloads from the system such as reports in CSV format, CRF data, archives, code list and the audit trail itself
The audit trail
An example extract from a log is shown below. The items shown in each row of the log are (from left to right):
- IP address of the user who initiated the event
- Name and user ID of the user
- URL
- Server date and time (including GMT offset)
- Notice level - usually this will be "INFO (6)"
- Message
Where applicable, the message contains information on the data before and after the event. Some events might generate several related messages - such as an explanatory note
"Edited form Eligibility Criteria Check At Recruitment for Patient SDN01"
plus a change in the data:
"Row in crfBaselineEligibilityCriteria for: {"id" : "1"}, changed From: {"updated" : "2022-07-22 17:45:47","reasonForEdit":null ..."
Example extract
100.2.3.4 "Simon Admin (ID 2) (ID 11116)" "/redpill/demo/site/add" [2021-05-05T15:03:24+00:00] INFO (6): Added site 1: St Patrick's University Hospital, United Kingdom 100.2.3.4 "Simon Admin (ID 2) (ID 11116)" "/redpill/demo/crf/add/SubjectRegistration/0/f1779aa4a1b182bf42c5d419ae70420b" [2021-05-05T15:05:22+00:00] INFO (6): Row inserted to crfSubjectRegistration: {"id" : "1", "version" : "1", "subjectId" : "1", "siteId" : "1", "userIdentifier" : "Simon Admin (ID 2) (ID 11116)", "lastUserIdentifier" : "Simon Admin (ID 2) (ID 11116)", "created" : "2021-05-05 15:05:22", "updated" : "2021-05-05 15:05:22", "validationStatus" : "Not validated", "reasonForEdit" : null, "validationNotes" : null, "validationOverrides" : "{}", "uploadId" : null, "identifier" : "1-001", "PatientInitials" : "FN", "DateOfRegistration" : "2021-05-05", "Haemoglobin" : "20", "Gender" : "Female", "PregnancyTest" : "Yes", "Death" : "Yes"} 100.2.3.4 "Simon Admin (ID 2) (ID 11116)" "/redpill/demo/crf/add/SubjectRegistration/0/f1779aa4a1b182bf42c5d419ae70420b" [2021-05-05T15:05:22+00:00] INFO (6): Added form Subject registration for Subject 1-001 100.2.3.4 "Gemma Nurse (ID 59) (ID 59)" "/redpill/demo/crf/add/SubjectRegistration/0/c5c38b37660212864ffc03abff31009f" [2022-03-11T15:08:57+00:00] INFO (6): Row inserted to crfSubjectRegistration: {"id" : "2", "version" : "1", "subjectId" : "2", "siteId" : "1", "userIdentifier" : "Gemma Nurse (ID 59) (ID 59)", "lastUserIdentifier" : "Gemma Nurse (ID 59) (ID 59)", "created" : "2022-03-11 15:08:57", "updated" : "2022-03-11 15:08:57", "validationStatus" : "Not validated", "reasonForEdit" : null, "validationNotes" : null, "validationOverrides" : "{}", "uploadId" : null, "identifier" : "1-002", "PatientInitials" : "aa", "DateOfRegistration" : "2022-03-02", "Haemoglobin" : "12", "Gender" : "Male", "PregnancyTest" : null, "Death" : "No"} 100.2.3.4 "Gemma Nurse (ID 59) (ID 59)" "/redpill/demo/crf/add/SubjectRegistration/0/c5c38b37660212864ffc03abff31009f" [2022-03-11T15:08:57+00:00] INFO (6): Added form Subject registration for Subject 1-002 100.2.3.4 "Gemma Nurse (ID 59) (ID 59)" "/redpill/demo/query/create/2/" [2022-03-11T15:09:16+00:00] INFO (6): Row inserted to query: {"id" : "1", "subjectId" : "2", "created" : "2022-03-11 15:09:16", "title" : "test", "formName" : null, "formId" : null, "status" : "Open"} 100.2.3.4 "Gemma Nurse (ID 59) (ID 59)" "/redpill/demo/query/create/2/" [2022-03-11T15:09:16+00:00] INFO (6): Row inserted to queryMessage: {"id" : "1", "queryId" : "1", "userId" : 59, "userIdentifier" : "Gemma Nurse (ID 59) (ID 59)", "created" : "2022-03-11 15:09:16", "statusAction" : "Open", "comment" : "test"}