Skip to main content

Audit trail for django models

Project description

What It Does

Lets you keep track of who changed what model instance in you Django application. Full model structure is tracked and kept in a separate table similar in structure to the original model table.

Let’s say a user logs in the admin and adds a Product model instance. The audit log will track this in a separate table with the exact structure of you Product table plus a reference to the user, the time of the action and type of action indicating it was an insert.

Next the user does an update of the same Product instance. The audit log table will keep the previous entry and another one will be added reflecting the change.

When the user deletes the same model instance the audit log table will have an entry indicating this with the state of the model before it was deleted.

What It Doesn’t Do

The audit log bootstraps itself on each POST, PUT or DELETE request. So it can only track changes to model instances when they are made via the web interface of your application. Note: issuing a delete in a PUT request will work without a problem (but don’t do that). Saving model instances through the Django shell for instance won’t reflect anything in the audit log. Neither will direct INSERT, UPDATE or DELETE statements, either within a request lifecycle or directly in your database shell.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-audit-log-0.2.3.tar.gz (6.1 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page