Audit Trail Omeka Classic plugin

Releases

1.0.0

Oct 27, 2026

First version for Omeka Classic, the counterpart of the Audit Trail 1.0 module for Omeka S.

  • Records: creates, updates and deletes of items, files, collections, item types, elements and element sets, tags (renames and deletions), users, API keys, Simple Pages, and Exhibit Builder exhibits and pages, from Omeka's global record hooks, so the admin, batch edit, the REST API, imports, jobs and other plugins are all covered. Updates say what changed for the columns that matter (visibility, collection, item type, role, status, username, email, password changed, titles, slugs).
  • Administration: plugins installed, activated, deactivated, upgraded (with both versions), uninstalled and configured; the General, Security, Search, Item Type Elements and API settings, the appearance settings, the public navigation, the search re-index, theme switches and theme settings, and plugins' own settings pages, each saved form logged once with the options it changed (values of secret-looking options are never stored).
  • Logins, logouts and failed logins, with the username typed (never the password) and whether it is an account.
  • Bulk operations: background jobs, scripts, batch edits and busy requests share a batch ID, and the log folds each batch into one row. Saves Omeka makes as side effects (storing a new file, reordering files and exhibit pages, the login password-hash upgrade, API key use) are folded away.
  • Jobs and the command line record the job's user (or "System"), the job or script that ran, and no address.
  • The log at /admin/audit-trail: filters for action, actor, resource type and date range, pagination, a page for every entry with its data, links to a record's history and a user's activity.
  • Export the filtered log to CSV or JSON, streamed with no row limit; exports are logged.
  • Recent Activity panel on the dashboard (the ten latest events, batches folded), an Activity tab on every user's pages, and the latest events on the user page.
  • Settings: on/off switch, entries per page, retention period, automatic daily purge, IP address redaction, whether Admins may view the log, and the kinds of events to log.
  • Retention purge: a background job from the log page (Super Users), a daily automatic purge, and bin/purge-audit-log.php for cron, with --days, --dry-run and --quiet.
  • The audit_trail_log hook for other plugins to log their own events, bin/log-event.php to log from scripts, and the audit_trail_record_types filter to log a plugin's own records automatically.
  • The log is for Super Users; Admins may view and export it when the setting allows.
  • Times are stored in UTC and shown in the installation's time zone. X-Forwarded-For is only believed from private and loopback addresses.
  • Logging never breaks a save: one INSERT per event, every failure caught and reported to PHP's error log.
Log in for Support