Hi all,
Sorry for the cross post but I’m looking for existing solutions or suggestions for how to approach developing a solution for audit trails and course version tracking for a regulated corporate environment. It’s critical we’re able to track every change made in the LMS and require information about the type of change that occurred, who initiated it, when, and why with reporting capabilities. These changes can include creating, updating, and deleting sensitive data from:
Course records
Employee learning records
Courseware design and content
Due to the fact that our courses are updated regularly we must track:
Course completion by version, which employee completed which version
Individual employee logs, which employee did what, when (date, time)
The date, time, and employee who last updated the course (even the tiniest changes)
A record of historical course materials (if changes are made old courses should NOT be discarded)
Any ideas or suggestions for how this has been or might be accomplished with Open edX would be greatly appreciated.
Hi @awasklewicz, currently courses don’t have strict versioning, so the first point will be difficult to meet with a standard installation. There is a project working on updating the content and course storage system currently which while it is not yet the default system and is still under some development, is available for use and may fit this need.
For logging, edX has an event tracking infrastructure which logs many of the actions users take around the platform. This may not be a fully complete set of logs intended for auditing user actions, but it will log a large majority of actions around the platform.
The date and time of last course update is shown in the studio (course editing tool) per section:
For historical course materials, using the blockstore would be your best bet as well. Since it’s versioned, you can store history of changes and historical course material. Unfortunately the standard installation won’t work for this requirement, as it doesn’t support versioning of courses, but you can likely meet this requirement by installing and authoring courses in the blockstore instead.