-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
3 (Three) Level Event Reports #7855
Comments
This is rather important to me @mattab ;) |
@mgonera do you have some more info/ context? |
@mattab Basically demand is to be able to review all of Events data levels in one view. Furthermore, user would like to have data about Events enhanced with data about Goals triggered within visit containing such an event and so on. |
@mattab in my opinion such approach doesn't fulfill the need behind the issue. Hierarchy is key feature of this report. User's desire is to have 3 level structure. |
ideally for this we need Custom Reports feature: #4776 |
Hi, we really need this feature, so I'm taking a shot at it. I was able to create a new record name to store the full hierarchy and return with the new API method Events.getEventsTree Changes made: Events.getEventsTree response example here Is this an acceptable implementation approach? |
I haven't checked in detail but could work. You would likely need to limit the number of rows quite a bit for each level in these reports otherwise you end up with say up to 1000 x 1000 x 1000 rows = and this would not only take forever to process but also take a lot of storage. So you'd want more like 50 x 50 x 50 or something (restrict to 50 rows on each level). The problem is maybe also that sometimes people want it in a different order, eg Category -> Name -> Action causing even more rows / storage / processing time. We'd need to see how this impacts archiving / storage etc. With Custom reports there would be already a more flexible solution there and it would be only processed when this data is actually needed. Just in case you're not aware of it. |
How can I limit it? Since the Events plugin capped the returned rows at 10 on each report, and I didn't see that limitation inside of the plugin, I assumed the limit was built in inside Archive. I just took a second look and wasn't able to find it, if you could point me in the direction it'll be very helpful.
Agreed. In terms of resources I think the best option would be to create configurations for the user to decide which hierarchies they want. In my case I need only two of the seven (including my new one) record names being archived at the moment.
Thanks for reminding me. It is an viable option that I'm discussing with my product manager. |
It's a bit complicated to explain and this part of the archiving isn't really documented. So there is a concept ranking query in the archiving that can limit the query to a certain number of rows. Then additionally, when we serialise the table to store it in the DB here: https://github.com/matomo-org/matomo/blob/3.13.4/plugins/Events/Archiver.php#L223 different limits would need to be used for reports with 3 levels. Eg You find the ranking query here: https://github.com/matomo-org/matomo/blob/3.13.4/plugins/Events/Archiver.php#L179 |
Thanks for the explanation. As I understand it, the same configuration for second row is already being applied recursively to the third level on About the ranking query, I didn't fully understand it. Events Archiver So, if rows_actions config is bigger than rows_events, some rows will be fetched but not archived? Those rows would be archived in the next archiving session? |
The value for 2nd level will be also applied for all lower levels so it shouldn't be needed to add another setting for this. It's just important to not pick a high value for the 2nd level.
I would say this is likely a bug. It should use the event row levels not the action row levels I would say.
They would be still archived but within PHP they would be grouped into some
Yes indeed I would say. |
Fyi another feedback by email from a user who didn't see what he expected:
|
We use the event tracking a lot.
We have
In Piwik we can't display all 3 of them, only 2 are shown.
For example:
if you look at the categories you see all actions of this category -> missing name
if you look at the names you see all actions of this name -> missing category
if you look at the actions, you see all names of this action -> missing category
What we need is to group the results by this third layer.
The only way to get around this, is with segment filters by, for example a specific category, then i get all names and actions for this category. the problem is, there is an infinite number of categories in many different sites.
Is there a way to get this grouping in to the backend? (it would be enough to have this in the API)
To illustrate our use case see the following images:
TIA
The text was updated successfully, but these errors were encountered: