Skip to content

Commit

Permalink
Ensure correct aggregation of min/max event value metrics
Browse files Browse the repository at this point in the history
  • Loading branch information
sgiehl committed Jul 2, 2024
1 parent 066339f commit 732afac
Show file tree
Hide file tree
Showing 9 changed files with 49 additions and 39 deletions.
9 changes: 9 additions & 0 deletions plugins/Events/API.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
namespace Piwik\Plugins\Events;

use Piwik\Archive;
use Piwik\DataTable;
use Piwik\Metrics;
use Piwik\Piwik;

/**
Expand Down Expand Up @@ -154,6 +156,13 @@ protected function getDataTable($name, $idSite, $period, $date, $segment, $expan

$dataTable = Archive::createDataTableFromArchive($recordName, $idSite, $period, $date, $segment, $expanded, $flat, $idSubtable);

$dataTable->filter(function ($dataTable) {
$dataTable->setMetadata(DataTable::COLUMN_AGGREGATION_OPS_METADATA_NAME, [
Metrics::INDEX_EVENT_MIN_EVENT_VALUE => 'min',
Metrics::INDEX_EVENT_MAX_EVENT_VALUE => 'max',
]);
});

if ($flat) {
$dataTable->filterSubtables('Piwik\Plugins\Events\DataTable\Filter\ReplaceEventNameNotSet');
} else {
Expand Down
3 changes: 2 additions & 1 deletion plugins/Events/RecordBuilders/EventReports.php
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,8 @@ public function getRecordMetadata(ArchiveProcessor $archiveProcessor): array

foreach ($records as $record) {
$record->setMaxRowsInTable($maximumRowsInDataTable)
->setMaxRowsInSubtable($maximumRowsInSubDataTable);
->setMaxRowsInSubtable($maximumRowsInSubDataTable)
->setBlobColumnAggregationOps($this->columnAggregationOps);
}

return $records;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -538,7 +538,7 @@
<nb_events>69</nb_events>
<nb_events_with_value>14</nb_events_with_value>
<sum_event_value>137.96</sum_event_value>
<min_event_value>28.32</min_event_value>
<max_event_value>52.32</max_event_value>
<min_event_value>0</min_event_value>
<max_event_value>23</max_event_value>
</reportTotal>
</result>
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@
<nb_events>69</nb_events>
<nb_events_with_value>14</nb_events_with_value>
<sum_event_value>137.96</sum_event_value>
<min_event_value>28.32</min_event_value>
<max_event_value>52.32</max_event_value>
<min_event_value>0</min_event_value>
<max_event_value>23</max_event_value>
</reportTotal>
</result>
Original file line number Diff line number Diff line change
Expand Up @@ -616,7 +616,7 @@
<nb_events>69</nb_events>
<nb_events_with_value>14</nb_events_with_value>
<sum_event_value>137.96</sum_event_value>
<min_event_value>9.66</min_event_value>
<max_event_value>9.66</max_event_value>
<min_event_value>0</min_event_value>
<max_event_value>23</max_event_value>
</reportTotal>
</result>
Original file line number Diff line number Diff line change
Expand Up @@ -277,7 +277,7 @@
<nb_events>69</nb_events>
<nb_events_with_value>14</nb_events_with_value>
<sum_event_value>137.96</sum_event_value>
<min_event_value>9.66</min_event_value>
<max_event_value>9.66</max_event_value>
<min_event_value>0</min_event_value>
<max_event_value>23</max_event_value>
</reportTotal>
</result>
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
<segment>eventAction==-1</segment>
<subtable>
Expand All @@ -19,8 +19,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</subtable>
Expand All @@ -32,8 +32,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
<segment>eventAction==event+action+0</segment>
<subtable>
Expand All @@ -44,8 +44,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</subtable>
Expand All @@ -57,8 +57,8 @@
<nb_events>19</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</result>
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
<segment>eventCategory==-1</segment>
<subtable>
Expand All @@ -19,8 +19,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</subtable>
Expand All @@ -32,8 +32,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
<segment>eventCategory==event+category+0</segment>
<subtable>
Expand All @@ -44,8 +44,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</subtable>
Expand All @@ -57,8 +57,8 @@
<nb_events>19</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</result>
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
<segment>eventName==-1</segment>
<subtable>
Expand All @@ -19,8 +19,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</subtable>
Expand All @@ -32,8 +32,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
<segment>eventName==event+name+0</segment>
<subtable>
Expand All @@ -44,8 +44,8 @@
<nb_events>1</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</subtable>
Expand All @@ -57,8 +57,8 @@
<nb_events>19</nb_events>
<nb_events_with_value>0</nb_events_with_value>
<sum_event_value>0</sum_event_value>
<min_event_value>0</min_event_value>
<max_event_value>0</max_event_value>
<min_event_value />
<max_event_value />
<avg_event_value>0</avg_event_value>
</row>
</result>

0 comments on commit 732afac

Please sign in to comment.