Add DORA metrics dashboard MvC
What does this MR do and why?
This MR:
- Adds the
dora_metrics_dashboard
WIP feature flag - Renames the
dora_metrics_over_time
data source todora_metrics
-
Extends the data source to query for either time series data or a single value (uses the Bucketing interval parameter)!180012 (merged) - Adds time series chart visualizations for the four DORA metrics
- Adds a
DORA metrics
dashboard to test out the tiles + charts (optional)
References
Please include cross links to any resources that are relevant to this MR. This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
Dashboard | Dashboard list |
---|---|
![]() |
![]() |
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
- Seed data for
Dora Metrics
https://docs.gitlab.com/ee/development/development_seed_files.html - Enable the feature flags in rails console:
Feature.enable(:dora_metrics_dashboard)
- Navigate to Analytics Dashboard Editor for a group or project
- Select
Dora metric charts
- Compare the data in the charts with the CI/CD analytics page
Merge request reports
Activity
assigned to @ekigbo
added pipelinetier-1 label
- Resolved by 🤖 GitLab Bot 🤖
Proper labels assigned to this merge request. Please ignore me.
@ekigbo
- please see the following guidance and update this merge request.1 Error Please add typebug typefeature, or typemaintenance label to this merge request. Edited by 🤖 GitLab Bot 🤖
mentioned in merge request !177840 (merged)
added 232 commits
-
599368f7...e32e2378 - 224 commits from branch
master
- d2ec2815 - Add vsd_visualizations_in_analytics_dashboard_editor feature flag
- 9d9d0c19 - Fix failing rspec tests
- a68d2168 - Exclude group only dashboards at the project level
- 305a870e - wip - align naming for DORA metric aggregated visualizations
- cc961938 - wip - add df overtime line chart
- e73811db - wip - render single stat
- a1c9f51f - wip - basic deployment frequency over time
- 4df9bbce - wip - rename data source and update axis labels
Toggle commit list-
599368f7...e32e2378 - 224 commits from branch
added backend feature flag frontend groupoptimize labels
- Resolved by Ezekiel Kigbo
added devopsplan sectiondev labels
3 Warnings ae7893b5: Commits that change 30 or more lines across at least 3 files should describe these changes in the commit body. For more information, take a look at our Commit message guidelines. featureaddition and featureenhancement merge requests normally have a documentation change. Consider adding a documentation update or confirming the documentation plan with the Technical Writer counterpart.
For more information, see:
- The Handbook page on merge request types.
- The definition of done documentation.
The master pipeline status page reported failures in If these jobs fail in your merge request with the same errors, then they are not caused by your changes.
Please check for any on-going incidents in the incident issue tracker or in the#master-broken
Slack channel.1 Message CHANGELOG missing: If this merge request needs a changelog entry, add the
Changelog
trailer to the commit message you want to add to the changelog.If this merge request doesn't need a CHANGELOG entry, feel free to ignore this message.
Reviewer roulette
Category Reviewer Maintainer backend @morefice
(UTC+1, 8 hours behind author)
@dskim_gitlab
(UTC+11, 2 hours ahead of author)
frontend @fernando-c
(UTC-6, 15 hours behind author)
@blabuschagne
(UTC+1, 8 hours behind author)
test for spec/features/*
@morefice
(UTC+1, 8 hours behind author)
Maintainer review is optional for test for spec/features/*
Please refer to documentation page for guidance on how you can benefit from the Reviewer Roulette, or use the GitLab Review Workload Dashboard to find other available reviewers.
If needed, you can retry the
danger-review
job that generated this comment.Generated by
DangerEdited by **** Generated bygitlab_quality-test_tooling
.
Slow tests detected in this merge request. These slow tests might be related to this merge request's changes.Click to expand
Job File Name Duration Expected duration #8914935345 ee/spec/features/groups/analytics/visualizations_spec.rb#L40
Analytics Dashboard Visualizations for dora_chart visualization when ClickHouse is enabled for analytics when using project based historical statistics behaves like renders metrics comparison tables renders the Lifecycle metrics table 65.55 s < 50.13 s #8939913745 ee/spec/features/groups/analytics/visualizations_spec.rb#L40
Analytics Dashboard Visualizations for dora_chart visualization when ClickHouse is enabled for analytics when using project based historical statistics behaves like renders metrics comparison tables renders the Lifecycle metrics table 51.39 s < 50.13 s #9192490083 ee/spec/features/groups/analytics/visualizations_spec.rb#L35
Analytics Dashboard Visualizations for dora_chart visualization when ClickHouse is enabled for analytics behaves like renders metrics comparison tables renders the Lifecycle metrics table 51.08 s < 50.13 s #9221179443 ee/spec/features/groups/analytics/visualizations_spec.rb#L35
Analytics Dashboard Visualizations for dora_chart visualization when ClickHouse is enabled for analytics behaves like renders metrics comparison tables renders the Lifecycle metrics table 53.15 s < 50.13 s #9221517611 ee/spec/features/groups/analytics/visualizations_spec.rb#L35
Analytics Dashboard Visualizations for dora_chart visualization when ClickHouse is enabled for analytics behaves like renders metrics comparison tables renders the Lifecycle metrics table 53.85 s < 50.13 s #9228046589 ee/spec/features/groups/analytics/visualizations_spec.rb#L35
Analytics Dashboard Visualizations for dora_chart visualization when ClickHouse is enabled for analytics behaves like renders metrics comparison tables renders the Lifecycle metrics table 56.45 s < 50.13 s Edited by ****added rspec:slow test detected label
changed milestone to %17.9
- Resolved by Alex Pennells
@hsnir1 @blabuschagne @lvanc in Add DORA metrics over time datasource for Singl... (!151885 - merged) we added some single stat tiles for the four DORA metrics, these havent been expanded upon since they need to be manually configured, but with Include VSD panels in the built-in visualizatio... (#508776 - closed) they will be available to select from the list of visualizations to add to a dashboard.
This MR expands the data source to allow us to query both single values and time series data for the DORA metrics data source and adds relevant charts. I think this could be a first step towards replacing the CI/CD analytics page, at the very least it would provide some out of the box visualizations for DORA metrics. I made an example built in dashboard to illustrate their use.
There are a few ~ux issues, but it mostly works well, for example:
- I hardcoded 180 days for testing, but should be able to easily support any of the options in the date range dropdown (although "today" wouldnt make a lot of sense for the chart)
- The tooltip values dont get formatted correctly, so that will need a closer look
- Currently no support for calculating the median/average lines, but this should not be too difficult
- Connecting
null
values (the dotted lines in CI/CD analytics) - On the CI/CD analytics page, we use an Area chart for deployment frequency, but line chart for the others. I'm not sure why this is, but id be in favour of deciding on one chart type for consistency
For now, my main goal is to clean this up so that the single state and chart visualizations are useful out of the box, if we think the demo dashboard is worth having as well I can include that. Eitherway this provides a starting point for Create a new Value Stream Dashboards for DORA (#460158)
Edited by Ezekiel Kigbo
- Resolved by Alex Pennells
mentioned in merge request !178679 (closed)
added 616 commits
-
ab9ace5c...2e1b29e9 - 609 commits from branch
master
- 4da693bc - wip - align naming for DORA metric aggregated visualizations
- 390fa8ff - wip - add df overtime line chart
- cc3722c9 - wip - render single stat
- 648b10a1 - wip - basic deployment frequency over time
- 1d9fa3df - wip - rename data source and update axis labels
- 4487cf9f - [skip ci] wip
- d8143817 - [skip ci] wip
Toggle commit list-
ab9ace5c...2e1b29e9 - 609 commits from branch
added 1 commit
- fd05a52d - wip - correctly support date range from filters
mentioned in merge request !178999 (merged)
added 1332 commits
-
fd05a52d...d7db1df0 - 1317 commits from branch
master
- d7db1df0...68d8011a - 5 earlier commits
- c695b309 - Handle invalid date range query parameter
- 724b4174 - wip - align naming for DORA metric aggregated visualizations
- 194cb01c - wip - add df overtime line chart
- 6ec2750c - wip - render single stat
- 718f991f - wip - basic deployment frequency over time
- badd91f2 - wip - rename data source and update axis labels
- 25f9456a - [skip ci] wip
- d0a314ab - [skip ci] wip
- eea288fd - wip - correctly support date range from filters
- 81a4a223 - [skip ci] wip
Toggle commit list-
fd05a52d...d7db1df0 - 1317 commits from branch
added 338 commits
-
ede4d196...b1411e59 - 328 commits from branch
master
- b4607c11 - wip - align naming for DORA metric aggregated visualizations
- 2cc15ba5 - wip - add df overtime line chart
- 61a60763 - wip - render single stat
- 55ca08e7 - wip - basic deployment frequency over time
- 14e198c5 - wip - rename data source and update axis labels
- 463caabb - [skip ci] wip
- b820677e - [skip ci] wip
- b7618ea3 - wip - correctly support date range from filters
- 8cdde45d - [skip ci] wip
- 74fdefc2 - [skip ci] wip
Toggle commit list-
ede4d196...b1411e59 - 328 commits from branch
added 285 commits
-
74fdefc2...9df718f1 - 280 commits from branch
master
- 85fce1dd - Extend dora_metrics data source to query time series
- 3d056919 - wip - minor cleanup
- 5cb49b23 - wip - align naming for DORA metric aggregated visualizations
- 8f035ede - wip - rename data source and update axis labels
- 88d6a9e3 - wip - correctly support date range from filters
Toggle commit list-
74fdefc2...9df718f1 - 280 commits from branch
added 1290 commits
-
88d6a9e3...49f40fc2 - 1283 commits from branch
master
- db7560df - Adds the `experiment` status for analytics dashboards
- 43b13fe2 - Update related docs
- a1b704d5 - Extend dora_metrics data source to query time series
- 5e7b0a56 - Extend dora_metrics data source to query time series
- 49e54670 - wip - align naming for DORA metric aggregated visualizations
- 86f5eb2e - wip - rename data source and update axis labels
- adcf1965 - wip - correctly support date range from filters
Toggle commit list-
88d6a9e3...49f40fc2 - 1283 commits from branch
added 1 commit
- 4b585571 - wip - correctly support date range from filters
added documentation featureaddition typefeature labels
- Resolved by Ezekiel Kigbo
Hi @ekigbo,Please ensure data seeding scripts are created and/or updated by following the optimize group handbook page.
This message was generated automatically. Improve it or delete it.
mentioned in merge request !180012 (merged)
added 553 commits
-
4b585571...ef378669 - 546 commits from branch
master
- f4404697 - Extend dora_metrics data source to query time series
- 5ee92b54 - Address minor review comments
- 2613f3b1 - Adds the `experiment` status for analytics dashboards
- e25cdc4a - Update related docs
- 76d7d5cb - wip - align naming for DORA metric aggregated visualizations
- 5d3e1eea - wip - rename data source and update axis labels
- 786e7921 - wip - correctly support date range from filters
Toggle commit list-
4b585571...ef378669 - 546 commits from branch
added 628 commits
-
786e7921...d4782129 - 618 commits from branch
master
- 78404d39 - Extend dora_metrics data source to query time series
- d910bd3d - Address minor review comments
- 4bc58c90 - Minor clean up tests
- 55f0b9ca - Adds the `experiment` status for analytics dashboards
- 6afd8b43 - Update related docs
- 069d95f6 - wip - align naming for DORA metric aggregated visualizations
- 93389931 - wip - rename data source and update axis labels
- 269759ff - wip - correctly support date range from filters
- 22021935 - wip - fix minor lints
- 424d6dc8 - [skip ci] wip
Toggle commit list-
786e7921...d4782129 - 618 commits from branch
changed milestone to %17.10
added missed:17.9 label
mentioned in task #520052 (closed)
added 463 commits
-
424d6dc8...ef201489 - 453 commits from branch
master
- 6f7bb281 - Extend dora_metrics data source to query time series
- 12fa25ca - Address minor review comments
- 153137c2 - Minor clean up tests
- c928d41e - Address minor review comments
- ce60dce7 - wip - align naming for DORA metric aggregated visualizations
- df25839b - wip - rename data source and update axis labels
- 917b98d0 - wip - correctly support date range from filters
- 23d06cee - wip - fix minor lints
- 5bf26c42 - [skip ci] wip
- d02163e4 - wip - minor linting fixes
Toggle commit list-
424d6dc8...ef201489 - 453 commits from branch
added 518 commits
-
d02163e4...a73bf91a - 509 commits from branch
master
- 9d05b101 - wip - align naming for DORA metric aggregated visualizations
- 83407214 - wip - rename data source and update axis labels
- e46b3372 - wip - correctly support date range from filters
- 07365a86 - wip - fix minor lints
- 67d7bf90 - [skip ci] wip
- 51f87dd1 - wip - minor linting fixes
- e206dd6f - wip - fix tests
- 608682e9 - wip - fix broken specs
- 2e37e2e0 - [skip ci] wip
Toggle commit list-
d02163e4...a73bf91a - 509 commits from branch
added workflowin review label