/
Improved Audit Logging

Improved Audit Logging

Overview

With OpenMRS 2.7.0, Hibernate Envers was integrated to provide audit logging, enabling detailed tracking of database changes. However, there is currently no built-in way for admin users to view or manage these logs easily. This project aims to develop a backend module to facilitate audit log management, making it more accessible and useful within OpenMRS.

Key Features

  • Audit Reads on Selected Tables – Hibernate Envers does not support auditing table reads. We need to implement a system that integrates with Envers to track read operations on selected tables. This could leverage Hibernate Event Listeners, but alternative approaches are welcome.

  • Audit Log Viewer – Retrieve and display audit logs for database tables (legacy-ui).

    • Change Log: Log of changes made, by who

  • Filtering Options – Allow users to filter logs by:

    • User (who made the changes)

    • Date/Time (when the changes occurred)

    • Entity/Field (what was changed)

  • REST Endpoints – Expose APIs to allow external systems to access audit data.

Expectations for Contributors

Your report should include the following:

  • Legacy UI Designs – Ensure compatibility with OpenMRS’s legacy interface and provide mockups or wireframes.

  • Detailed Solution Architecture – Define the system’s structure, including:

    • Database schema

    • API design

    • Module integration

  • Feature Implementation Plan – Explain how you plan to implement each feature in the project.

  • Potential System Improvements – Suggest any updates or enhancements that could be made to improve the system further.

Skills You Will Use

  • Java, Hibernate, and Spring – Backend development expertise.

  • JSP & UI Design – Basic UI skills for designing the audit log viewer.

  • OpenMRS Backend Development – Understanding of OpenMRS modules and architecture.

  • Interest in Healthcare IT – Passion for improving open-source medical record systems.

This project will provide valuable experience in enterprise-level auditing, modular backend development, and healthcare information technology while contributing to OpenMRS’s long-term sustainability.

References

 

Enabling Hibernate Envers Audit Logging in OpenMRS

GitHub - wikumChamith/openmrs-module-auditlogui

Related content