Add Audit Tables to your Reports Module

My users had a need to query the audit log for various modules in ways that the current built in system would not allow.  Now, I could create advanced report after advanced report but really I hate making advanced reports. So I worked out how to do it and documented it here with files you can download

This was my list of criteria for this project

  1. I need a way to report on any modules audit log
  2. I need a way that allows a manager to create their own reports without my help
  3. That method has to be familiar to them already (this was really me saying I wanted it in the Reports module)
  4. It must not allow editing of Audit Logs in any way (Kinda dovetails into #8)
  5. It must be fast over millions of records (some of our audit logs are huge)
  6. It must translate all the raw data back into English (This was the real trick as almost all the data in an audit table is an ID or an option key and may not be readable by a user at all.
  7. It must allow our system admins to include that new audit_events table data in the reports (I hope this gets tweaked in the future to include more data)
  8. It cant break the current core Audit code