v 16.0 Third Party 3708
Download for v 16.0 Deploy on Odoo.sh
Availability
Odoo Online
Odoo.sh
On Premise
Lines of code 557
Technical Name smile_audit
LicenseLGPL-3
Websitehttps://www.smile.eu/
Versions 8.0 6.1 10.0 11.0 12.0 13.0 14.0 16.0 15.0 9.0
You bought this module and need support? Click here!

Audit Trail

License: LGPL-3 Smile-SA/odoo_addons

This module lets administrator track every user's operation on all the objects of the system (for the moment, only create, write and unlink methods). Each rule for tracking user's operation on data through the Odoo's interface is called audit rule.

Features:

  • The administrator creates an audit rule by specifying the name and the module on which the rule will be applied,
  • The administrator ticks the operations he wants to follow (creation and/or modification and/or deletion),
  • The administrator selects the group of users concerned by the audit.
  • A rule can be disabled if the administrator does not want to follow its logs anymore.
  • Operations performed by a user will be automatically recorded in the list of logs according to the pre-defined rule.
  • The log view contains details about each operation: date, name, the module, the user, old and new values of each modified field, etc.
  • The module also allows a history revision of each operation.
  • The administrator can delete audit rules but logs can't be deleted.
  • Users can view a list of current model logs.

Table of contents

Usage

To create a new rule:

  1. Go to Settings > Audit > Rules menu.

  2. Press the button Create.

  3. Insert the name of the rule, the model and the user group. Then check operations you want to audit.

    Audit rule

To show the list of logs and edit a log:

  1. Go to Settings > Audit > Logs menu.

    List of audit logs
  2. Display the log by clicking on a line to see more details about the operation and changes.

    Line of log

To view different versions of the object:

  1. Click on the smart button History Revision.

    Line of log
  2. Corresponding history:

    History revision

To view logs of displayed model:

  1. Select one or multiple lines from the list view.

  2. Go to Action > View audit logs.

    View audit logs

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback here.

Do not contact contributors directly about support or help with technical issues.

GDPR / EU Privacy

This addons does not collect any data and does not set any browser cookies.

Credits

Contributors

  • Corentin POUHET-BRUNERIE

Maintainer

This module is maintained by Smile SA.

Since 1991 Smile has been a pioneer of technology and also the European expert in open source solutions.

Smile SA

This module is part of the odoo-addons project on GitHub.

You are welcome to contribute.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.
There are no ratings yet!
by
apanasov86@mail.ru
on 2/16/24, 1:41 AM

If there are any plans to migrate the "smile_audit" module to version 17 in the near future? Thanks!

Re:
by
Smile
on 2/16/24, 3:07 AM Author

No, we don't plan to migrate "smile_audit" module to version 17, because we will use the auditlog OCA module instead.


Error when record is edited and saved
by
Joe Munardi
on 1/18/24, 9:28 AM
Traceback (most recent call last):
  File "/Users/Karunia/odoo16/odoo/odoo/http.py", line 1583, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "/Users/Karunia/odoo16/odoo/odoo/service/model.py", line 134, in retrying
    result = func()
  File "/Users/Karunia/odoo16/odoo/odoo/http.py", line 1610, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "/Users/Karunia/odoo16/odoo/odoo/http.py", line 1807, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "/Users/Karunia/odoo16/odoo/odoo/addons/base/models/ir_http.py", line 154, in _dispatch
    result = endpoint(**request.params)
  File "/Users/Karunia/odoo16/odoo/odoo/http.py", line 696, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "/Users/Karunia/odoo16/odoo/addons/web/controllers/dataset.py", line 46, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/Users/Karunia/odoo16/odoo/addons/web/controllers/dataset.py", line 33, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/Users/Karunia/odoo16/odoo/odoo/api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/Users/Karunia/odoo16/odoo/odoo/api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/Users/Karunia/Odoo14/Addons-Git/JASINDO/ab_purchase_order/models/purchase_order.py", line 55, in button_confirm
    res = super(PurchaseOrder, self).button_confirm()
  File "/Users/Karunia/Odoo14/Addons-Git/JASINDO/purchase_request/models/purchase_order.py", line 80, in button_confirm
    res = super(PurchaseOrder, self).button_confirm()
  File "/Users/Karunia/odoo16/odoo/addons/purchase_requisition/models/purchase.py", line 124, in button_confirm
    res = super(PurchaseOrder, self).button_confirm()
  File "/Users/Karunia/odoo16/odoo/addons/purchase/models/purchase.py", line 495, in button_confirm
    order.button_approve()
  File "/Users/Karunia/odoo16/odoo/addons/purchase_stock/models/purchase.py", line 110, in button_approve
    result = super(PurchaseOrder, self).button_approve(force=force)
  File "/Users/Karunia/odoo16/odoo/addons/purchase/models/purchase.py", line 480, in button_approve
    self.filtered(lambda p: p.company_id.po_lock == 'lock').write({'state': 'done'})
  File "/Users/Karunia/odoo16/odoo/addons/smile_audit/tools/decorator.py", line 61, in audit_write
    keys = new_values[0].keys()
IndexError: list index out of range

The above server error caused the following client error:
RPC_ERROR: Odoo Server Error
    at makeErrorFromResponse (http://localhost:8069/web/assets/481-d242b28/web.assets_backend.min.js:970:163)
    at XMLHttpRequest. (http://localhost:8069/web/assets/481-d242b28/web.assets_backend.min.js:978:13)