Audit Log for Odoo 19 documentation
A guide to the audit log: choosing what to audit, reading the logs and the history of a record, access rights, clean-up and the limits.
Documents version 1.0.0Updated Oct 23, 2026
Start here
In plain words: Somebody changed the price, the customer's address, or deleted a record, and nobody knows who or when. Odoo's chatter tracks only a few fields and cannot track deletions. Audit Log records every creation, change and deletion of the models you choose, with who did it, when, from which IP address, and the old and the new value of each field.
Tip: The logs are read only. Nobody, not even an administrator, can edit or delete them from the interface; they are removed only by the clean-up of old logs, if you set one.
What you get
| Feature | What it does |
|---|---|
| Audit rules | Choose the models to audit and what to log: creations, changes, deletions. |
| Old and new value | Every changed field with its value before and after. |
| Who, when, where | The user, the date and time, the company and the IP address of the request. |
| Deletions | A deleted record is logged with all its fields, so you can see what was lost. |
| Audit history | An Audit history entry in the Action menu of every audited form and list. |
| Narrow it down | Log only some fields, ignore noisy fields, ignore a user such as an integration. |
| Safe | Passwords, keys and technical fields are never logged. A log failure never blocks the operation. |
| Clean-up | Delete the logs older than a number of days, every day. |
| Arabic | Everything is translated and works right to left. |
Requirements
| Item | Details |
|---|---|
| Odoo | 19.0 (Community or Enterprise) |
| Apps needed | None beyond the Odoo base (base, mail) |
| License | OPL-1 (Odoo Proprietary License v1.0) |
Install
- Unzip the package. Inside is
taqnix_audit_log.zip; unzip it to get the foldertaqnix_audit_log. - Copy the folder into one of the
addons_pathfolders of your Odoo server and restart Odoo. - Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
- Remove the “Apps” filter, search Audit Log and press Install.
# or from the command line ./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_audit_log --stop-after-init
Choose what to audit
In plain words: Open Settings → Audit Log → Audit Rules. Press Add the usual models to audit sales orders, purchase orders, journal entries, contacts, products, transfers, users, employees, leads and tasks (those that are installed), or press New to choose a model yourself.
| Field | Meaning |
|---|---|
| Model | The model to audit. The audit log itself and transient models cannot be audited. |
| Log creations / changes / deletions | Tick what you want to record. |
| Only these fields | Empty: every stored field. Choose fields to log only those. |
| Ignored fields | Fields never logged for this model, for example a computed counter. |
| Ignored users | Changes made by these users are not logged, for example an integration user. |
| Active | Switch a rule off without deleting it. |
Read the logs
In plain words: Settings → Audit Log → Audit Logs lists every operation: date, user, operation, model, record, number of fields and IP address. Creations are green, deletions red. Filter by operation, by today or the last 7 days, group by user or model, or search a record name.
In plain words: Open a log to see each field with its old value and new value. For a deletion you see the values the record had.
History of one record
In plain words: Once a model is audited, every one of its forms and lists has Action → Audit history. It opens the logs of that record only (or of the records you selected in the list).
Tip: The chatter shows the fields tracked by that model and only some of them. The audit log covers every stored field and also deletions.
Who can read the logs
| Group | Can |
|---|---|
| Audit Log: Auditor | Read the audit logs. Administrators are auditors automatically. |
| Administrator | Read the logs, manage the audit rules and the settings. |
In plain words: Add a user to the Auditor group (Settings → Users) to let a manager read the logs without making them an administrator.
Settings and clean-up
In plain words: Settings → Audit Log.
| Setting | What it does |
|---|---|
| Keep the logs for (days) | A daily job deletes the logs older than this. 0 keeps them for ever. |
| Audit rules | A shortcut to the list of rules. |
Important: Logs can grow quickly on busy models such as journal entries. Choose the models you really need and set a number of days.
Arabic and right to left
In plain words: Labels and menus are translated. The record names and the field values are shown as they were stored.
Limits
| Limit | Detail |
|---|---|
| Only the Odoo ORM | Changes made with the ORM (screens, imports, RPC, code) are logged. Direct SQL changes are not. |
| Stored fields | Computed fields that are not stored are not logged. |
| Binary and large values | Images and files are not logged; long texts are shortened. |
| Not tamper-proof against the database | Logs cannot be changed from Odoo, but someone with access to the database can edit it. |
| Disk space | One row per change. Use the clean-up setting. |
For developers
In plain words: Skip this chapter if you only use the module.
| Item | Details |
|---|---|
| Models | taqnix.audit.rule, taqnix.audit.log and taqnix.audit.log.line. |
| Hook | The module extends base: create, write and unlink check one cached rule per model. |
| Skip | Pass tx_no_audit=True in the context to skip the log, for example in a mass migration. |
env['taqnix.audit.rule'].create({'model_id': env['ir.model']._get_id('sale.order')})
# a migration that must not be logged
records.with_context(tx_no_audit=True).write({'state': 'done'})
# the logs of a record
env['taqnix.audit.log'].search([('model_name', '=', 'sale.order'), ('res_id', '=', order.id)])Troubleshooting
| Problem | What to do |
|---|---|
| Nothing is logged | Check that the rule exists, is active, and that the operation (create, change, delete) is ticked. A listed ignored user or ignored field is skipped. |
| I do not see the Audit Log menu | You need the Auditor group, or to be an administrator. |
| “This model is already audited” | A model has one rule. Edit it instead of creating another. |
| “Audit logs cannot be deleted” | This is by design. Use Keep the logs for (days) to remove old logs. |
| The Audit history entry is missing | It appears when a rule exists for the model; reload the page. |
Updating and removing
Replace the folder with the new version, restart Odoo and run -u taqnix_audit_log. Rules and logs are kept. Removing the module deletes its rules and logs.
Support
Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.