Create generic metrics dashboard for each stage group

Part of gitlab-com/gl-infra/scalability#664, following iteration of !2999 (merged).

This merge request's main focus is to implement a script to create generic metrics dashboard for each stage group. All the dashboards are placed in dashboards/staged-groups folder with the name <group-key>.dashboard.jsonnet. The script is located at scripts/update_stage_groups_dashboards.rb. It compiles the stage group mapping file to get the list of up-to-date groups. Then, it compares the group list with the dashboards in the dashboards/stage-groups folder to generate new dashboards for new groups and remove the untouched dashboards which are not mentioned in the mapping file. As the generic dashboard is organized to encourage extension and customization, the script skips the dashboards which are already modified.

Screenshot_from_2020-12-16_23-46-10

This merge request also updates scripts/update-stage-groups-feature-categories to sanitize and convert the group keys inside the mapping file into group-key format. As the keys are used to query feature categories, this conversion is safe.

I generated some sample dashboards, and tested with test-dashboard script:

This script will get run as part of the monthly stage-group check, right after stage group mapping sync. As a beginning, I attach 43 generic dashboards from the last updated stage group file.

Edited by Bob Van Landuyt

Merge request reports

Loading