Skip to content

Add aggregate counts for epic related user driven events

This is the implementation issue that came out of https://gitlab.com/gitlab-data/analytics/-/issues/5280

Goal

Track user interactions with epics within the [usage ping] so that we can calculate Monthly Active Users (MAU) for Plan. It is important that we have an accurate reflect of MAU as it is one of the primary metrics that GitLab leadership uses to make informed investment decisions across the product.

Product Planning MAU Definition

[The sum of all unique users that took an action within an epic over a given period of time.]

Proposal

Implement a counter in the [usage ping] that aggregates the total count of unique users that took an action on an epic.

Events To Aggregate In [Usage Ping]

Action Description Added To Counter Assignee Sisense
epic_created Epic created !53651 (merged) @felipe_artur view chart
epic_title Changed the title of the epic !56489 (merged) @cablett view chart
epic_description Changed the description of the epic !56489 (merged) @cablett view chart
epic_task Ticked off a task in a task list in the epic description !59871 (merged) @jarka NOT THERE
epic_opened Epic opened - - -
epic_re-opened Epic re-opened !56246 (merged) @jarka view chart
epic_closed Epic closed !56246 (merged) @jarka view chart
epic_moved Epic moved to another group - not possible - @jarka
epic_label Changed the labels on the epic !56571 (merged) @jarka view chart
epic_confidential Marked the issue as confidential !56483 (merged) @jarka view chart
epic_visible Marked the epic as not confidential !56483 (merged) @jarka view chart
epic_issue Issue added to the epic from any means !56559 (merged) @felipe_artur NOT THERE
issue_promoted_to_epic Issue promoted epic !56706 (merged) @felipe_artur view chart
epic_issue_added Issue added/created from within an epic detail page !61822 (merged) @donaldcook view chart
epic_issue_removed Issue removed from epic !58426 (merged) @felipe_artur view chart
epic_issue_moved Issue in epic moved to another project !58590 (merged) @felipe_artur view chart
epic_note_created Added a comment to the epic !56609 (merged) @cablett view chart
epic_note_updated Edited a comment on the epic !56610 (merged) @cablett view chart
epic_note_destroyed Removed (deleted) a comment on the epic !56617 (merged) @cablett view chart
epic_start_date_fixed Epic start date is set to fixed !56619 (merged) @cablett view chart
epic_start_date_inherited Epic start date is set to inherited !56619 (merged) @cablett view chart
epic_due_date_fixed Epic due date is set to fixed !57457 (merged) @cablett view chart
epic_due_date_inherited Epic due date is set to inherited !57457 (merged) @cablett view chart
epic_start_date_fixed_changed Epic start date changed manually !57672 (merged) @cablett view chart
epic_due_date_fixed_changed Epic due date changed manually !57672 (merged) @cablett view chart
epic_parent_set Epic parent set as other epic - - -
epic_parent_changed Epic parent changed !60079 (merged) @cablett
epic_parent_unset Epic parent epic unset - - -
epic_cross_reference Epic is referenced somewhere else (comment, issue description) !59804 (merged) @felipe_artur
epic_destroyed Epic is destroyed !59185 (merged) @felipe_artur view chart
epic_emoji_awarded Emoji awarded on epic !60787 (merged) @cablett view chart
epic_emoji_unawarded Emoji unawarded on epic !60989 (merged) @cablett

Note: Those marked with * are now being tracked using resource events. So we must also account for records in those tables.

Implementation details

Bonus

Edited by Felipe Cardozo