matomo-org / matomo

Empowering People Ethically with the leading open source alternative to Google Analytics that gives you full control over your data. Matomo lets you easily collect data from websites & apps and visualise this data and extract insights. Privacy is built-in. Liberating Web Analytics. Star us on Github? +1. And we love Pull Requests!
https://matomo.org/
GNU General Public License v3.0
19.94k stars 2.66k forks source link

Disable Action Pageview Grouping #14815

Open ibril15 opened 5 years ago

ibril15 commented 5 years ago

Hello,

Our website is loosely structured as an outer "workspace" and an inner "content" iframe, both of which are tracked in matomo. The outer workspace contains some of the main navigation as well as common actions (e.g. a "Help" link). The inner content iframe contains all of the actual site content and associated navigation, actions, etc.

3.10 introduced "action grouping" in the visitor log (https://github.com/matomo-org/matomo/issues/13136), that makes actions show under the page where it occurs rather than chronologically. That's helpful for a lot of scenarios, but it takes away our ability to see things like "what page was the user on when he clicked the 'Help' link". Since the Help always exists on the outer workspace, all clicks on the Help will always show up under the original outer workspace page rather than under the latest page the user visited. To clarify:

Before Grouping the Visitor Log looked something like this:

  1. Outer Workspace Page
  2. Inner Content Page 1
  3. Inner Content Page 2
  4. Event - Workspace Help Link Clicked
  5. Inner Content Page 3
  6. Event - Workspace Navigation to Page 4
  7. Inner Content Page 4

After Grouping the Visitor Log looks something like this:

  1. Outer Workspace Page
  2. Event - Workspace Help Link Clicked
  3. Event - Workspace Navigation to Page 4
  4. Inner Content Page 1
  5. Inner Content Page 2
  6. Inner Content Page 3
  7. Inner Content Page 4

Is there any way to disable the grouping functionality, or otherwise specify in the Event triggering JS to associate the event with the latest page rather than the parent page? Thanks a lot.

-Igor

tsteur commented 5 years ago

thanks for the feedback @ibril15 There is no way to disable it AFIAK. We're likely not planning to implement it as it's bit edge case. I labeled it as enhancement - new plugin. It could probably be solved in a new plugin to get this behaviour probably.

siva538 commented 5 years ago

Hello @tsteur . Believe this could be easily done by setting "urlref" of the Event Tracking Call.

From Matomo perspective, as of now we are providing only 3-4 parameters for trackEvent. like Category, Action and Name, (value).

The overloaded method could be with an addtional parameter of "urlref". This way we can overwrite the referring url and hence associating to the required one.

If you like this idea, I can do a pull request.

Thanks a lot.

tsteur commented 5 years ago

@siva538 we're not really wanting to change behaviour in core likely. It be better in a new plugin. But just to check: Can you check the order is correct... like do item 2-6 have the same timestamps? And are the items sorted by date? Because I think they should be still sorted by date, and then grouped together only if they were right after each other.