Audience Targeting analytics tables and some rule tables store raw analytics data received from the analytics processor. While this provides full reporting and behavior-based segmentation capabilities to the app, it also increases the size of these tables.
Currently, it is possible to customize the automatic clean-up of these tables through the System Settings. However, it is not possible to disable the data storage without completely disabling the analytics tracking.
The goal of this story is to add settings to control whether the raw data will be stored or not in the affected tables, even if the analytics tracking is enabled. As a result, the history of tracked analytics events would no longer be available through the Analytics Service. The only access to this information would be through the liferay/analytics destination of the message bus.
Steps to validate:
- In a Liferay bundle with AT 2.2.0 installed, log in as an Admin
- Go to Control Panel > Configuration > System Settings > Web Experience > Audience Targeting Analytics Storage
- Assert that the Storage enabled box is checked (default behavior)
- Create a user segment that matches the current user (e.g. with Ruge Age in a wide range)
- Add a Web Content Display application to a page and add/configure a content to be displayed on it.
- Reload the page several times
- Go to the user segment created in 4. and visualize the Content View report. Click the Update option.
- Assert that the report shows the view counts of the content added in 5.
- Go back to 2., disable the Storage enabled box and save changes.
- Repeat 6. and 7. Assert that the count in the report did not increase and that the report displays a message informing that "This report will not work properly because Analytics Storage is not enabled"
In steps 7, 8 and 10, the validation can be performed by running this query on a SQL client connected to the Liferay DB:
select count from ct_analytics_analyticsevent;