Introduction
============
The package allows you to audit actions being done on your site.
It accomplishes this by using configurable content rules.
By default, after you activate this package,
it'll create all the content rules
that can be used for auditing with only the Page type to audit OOTB.
If you want to audit more types of objects,
you'll need to configure the content rules.
The audits are stored into a relational database.
Once installed and called for the first time
it will create a table called "audit" if it does not already exist,
so there is no need to create the table manually.
AuditLog attempts to use plone.app.async to perform the store actions,
but if that fails it will finish the task directly.
The advantage of this is to allow an individual 'worker' client
to run Async and handle all of these request.
If there is a lot of activity it will not get backed up.
Async queues the job up and handles it as it can
while the users request finishes and moves on
avoiding sacrifices in performance.
Refer to the collective.async pypi page
for instructions on setting it up if you use it.
Async is NOT required for AuditLog to work,
however it is advised, especially for high traffic sites.
Installation
============
Download the package from GitHub and extract into your src directory.
Add 'collective.auditlog' to your eggs and zcml slugs in buildout.
Include the location (src/collective.auditlog) in development slugs too.
Run buildout
In Site Setup -> Add-ons, active Audit Log.
Once it is installed you will see "AuditLog" under Add-on Configuration.
This is where you can configuration the relational database.
The configuration string needs to be a valid SQLAlchemy connection string.
The control panel also allows you to enable/disable
tracking of actions performed on working copies.
All that is left is to configure the new Content Rules
to track the content types and actions you desire.
Dependencies
============
All dependencies are installed automatically
when installing collective.auditlog.
Here is just a list of those for reference:
- setuptools
- sqlalchemy
- five.globalrequest
- plone.app.async
Authors
=======
- Joel Rainwater, initial author
- Nathan van Gheem, Async integration, bug fixes, optimization.
- Alessandro Pisa, bug fixing, testing
Changelog
=========
1.4.0 (2020-02-18)
------------------
- Rerelease 1.4.0a3 as 1.4.0
[ale-rt]
1.4.0a3 (2019-04-10)
--------------------
- Fix soft dependency on formlib (#22)
[ale-rt]
1.4.0a2 (2018-10-11)
--------------------
- Speed up rule retrieval
[ale-rt]
1.4.0a1 (2018-08-30)
--------------------
- Deprecate some utility methods.
[ale-rt]
- Added some memoized properties and methods to the `AuditActionExecutor` class
for easier customization
[ale-rt]
1.3.3 (2018-07-12)
------------------
- Factored out getObjectInfo and addLogEntry.
[reinhardt]
1.3.2 (2018-07-11)
------------------
- Skip retrieving rule when audit log is disabled completely.
Improves performance.
[reinhardt]
1.3.1 (2017-04-13)
------------------
- Fix upgrade step title.
[ale-rt]
1.3.0 (2017-04-13)
------------------
- The engine parameters (like pool_recycle, echo, ...)
can be specified through a registry record
[ale-rt]
1.2.2 (2016-06-06)
------------------
- Make action more robust on IActionSucceededEvent
[ale-rt]
1.2.1 (2016-05-10)
------------------
- Fix unicode issues
- Tests are working again
[ale-rt]
1.2.0 (2016-05-03)
------------------
- First public release