From 1e12513b180ca04955567d5f2530f1b38565525e Mon Sep 17 00:00:00 2001 From: Thomas Randolph Date: Tue, 4 Feb 2025 18:21:59 -0700 Subject: [PATCH 1/8] Add events and metrics to track when reviewers are selected --- .../user_selects_reviewer_from_mr_sidebar.yml | 19 ++++++++++++++++ ..._reviewer_from_mr_sidebar_after_search.yml | 19 ++++++++++++++++ ..._user_selects_reviewer_from_mr_sidebar.yml | 22 +++++++++++++++++++ ..._reviewer_from_mr_sidebar_after_search.yml | 22 +++++++++++++++++++ 4 files changed, 82 insertions(+) create mode 100644 config/events/user_selects_reviewer_from_mr_sidebar.yml create mode 100644 config/events/user_selects_reviewer_from_mr_sidebar_after_search.yml create mode 100644 config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar.yml create mode 100644 config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar_after_search.yml diff --git a/config/events/user_selects_reviewer_from_mr_sidebar.yml b/config/events/user_selects_reviewer_from_mr_sidebar.yml new file mode 100644 index 00000000000000..37bc2342c91052 --- /dev/null +++ b/config/events/user_selects_reviewer_from_mr_sidebar.yml @@ -0,0 +1,19 @@ +--- +description: User selects a reviewer from the merge request reviewers sidebar +internal_events: true +action: user_selects_reviewer_from_mr_sidebar +identifiers: +- project +- namespace +- user +additional_properties: + value: + description: List position of the selected user +product_group: code_review +product_categories: +- code_review_workflow +milestone: '17.9' +introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180307 +tiers: +- premium +- ultimate diff --git a/config/events/user_selects_reviewer_from_mr_sidebar_after_search.yml b/config/events/user_selects_reviewer_from_mr_sidebar_after_search.yml new file mode 100644 index 00000000000000..3dffff50784de5 --- /dev/null +++ b/config/events/user_selects_reviewer_from_mr_sidebar_after_search.yml @@ -0,0 +1,19 @@ +--- +description: User selects a reviewer from the merge request reviewers sidebar after they have entered a search query and the list has updated +internal_events: true +action: user_selects_reviewer_from_mr_sidebar_after_search +identifiers: +- project +- namespace +- user +additional_properties: + value: + description: List position of the selected user +product_group: code_review +product_categories: +- code_review_workflow +milestone: '17.9' +introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180307 +tiers: +- premium +- ultimate diff --git a/config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar.yml b/config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar.yml new file mode 100644 index 00000000000000..4b8f671757c85d --- /dev/null +++ b/config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar.yml @@ -0,0 +1,22 @@ +--- +key_path: redis_hll_counters.count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar +description: Count of unique users who selected a reviewer from the MR reviewer sidebar +product_group: code_review +product_categories: +- code_review_workflow +performance_indicator_type: [] +value_type: number +status: active +milestone: '17.9' +introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180307 +time_frame: +- 28d +- 7d +data_source: internal_events +data_category: optional +tiers: +- premium +- ultimate +events: +- name: user_selects_reviewer_from_mr_sidebar + unique: user.id diff --git a/config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar_after_search.yml b/config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar_after_search.yml new file mode 100644 index 00000000000000..177a5c8fd18f84 --- /dev/null +++ b/config/metrics/counts_all/count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar_after_search.yml @@ -0,0 +1,22 @@ +--- +key_path: redis_hll_counters.count_distinct_user_id_from_user_selects_reviewer_from_mr_sidebar_after_search +description: Count of unique users who selected a reviewer from the MR reviewer sidebar after filtering the reviewer list with a custom search +product_group: code_review +product_categories: +- code_review_workflow +performance_indicator_type: [] +value_type: number +status: active +milestone: '17.9' +introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180307 +time_frame: +- 28d +- 7d +data_source: internal_events +data_category: optional +tiers: +- premium +- ultimate +events: +- name: user_selects_reviewer_from_mr_sidebar_after_search + unique: user.id -- GitLab From 02e9b04fe9946fdd2ef5c0821fa80f9a865db78a Mon Sep 17 00:00:00 2001 From: Thomas Randolph Date: Thu, 6 Feb 2025 20:41:48 -0700 Subject: [PATCH 2/8] Send a tracking event with the position of the selected reviewer --- .../reviewers/reviewer_dropdown.vue | 55 +++++++++++++++---- 1 file changed, 44 insertions(+), 11 deletions(-) diff --git a/app/assets/javascripts/merge_requests/components/reviewers/reviewer_dropdown.vue b/app/assets/javascripts/merge_requests/components/reviewers/reviewer_dropdown.vue index 18d97de2084dd6..553727a360c52f 100644 --- a/app/assets/javascripts/merge_requests/components/reviewers/reviewer_dropdown.vue +++ b/app/assets/javascripts/merge_requests/components/reviewers/reviewer_dropdown.vue @@ -1,7 +1,8 @@