- Version: 0.9.3 beta
- Author: craig zheng
- Build Date: 12th August 2010
- Requirements: Symphony 2.1
A Symphony extension that tracks user and system activity.
- Tracks creations, updates, and deletes of Entries, Pages, Page Templates, Events, Data Sources, Utilities, and Sections.
- Tracks when Preferences are changed.
- Tracks when Extensions are enabled, disabled, or uninstalled.
- Provides a back-end interface for viewing and managing tracked activities.
- Provides a data source for accessing Entry-related tracker activity from the front end.
- Place the
tracker
folder in your Symphonyextensions
directory. - Go to System > Extensions, select "Tracker", choose "Enable" from the with-selected menu, then click Apply.
Activities can be viewed at System > Tracker Activity. It is possible from this page to delete individual activities or to clear all activity in the system.
The view can be filtered with GET params using the normal Symphony back-end filtering syntax:
?filter=column:values
column can be any of: item_type
, item_id
, action_type
, or user_id
. values can be a comma-delimited list of values to filter on. The following values are acceptable:
- For item_type: a section id,
pages
,events
,datasources
,utilities
,sections
,authors
,preferences
, orextensions
- For action_type:
updated
,created
,deleted
,enabled
,disabled
,uninstalled
- For user_id: an author id
Example:
/symphony/extension/tracker/?filter=item_type:pages,events
Tracker allows you to exclude certain types of activity from being tracked. Go to System > Preferences and, in the "Tracker" section, choose any system elements, sections, or users you'd like to exclude from tracking.
The included data source, "Tracker Activity" can be attached to Pages and returns all Entry creation/update activity.
Configuration options are available in the data source file, but rather than edit the included version, it's recommended to copy the code into a custom DS of your own:
- Copy the
data.tracker_activity.php
file to yourworkspace/data-sources
and rename it to data.your_datasource.php - Update the class name (line 6) to datasourceyour_datasource
- Update the
about()
method (line 28) to reflect your data source's name and other info - Update the sorting and filtering options (lines 10-21) to suit your needs
Tracker uses lots of workarounds, because delegates simply don't exist for most of the activity it tracks. You should therefore test very thoroughly before relying on it in a production environment.
- Tracker doesn't catch when entries are deleted in the context of the Sections index (With Selected > Delete Entries). This is because the publish-delete delegate doesn't trigger.
- Track front-end submissions
- Enable other extensions to log activities
- Build a Dashboard panel?
- 0.9.3 Fix section description links
- 0.9.2 Sanitize and trim an Entry's primary field ebfore using
- 0.9.1 Silently ignore unknown activities (e.g. from other extensions)
- 0.9 Initial build