Seed metrics dashboard with example charts to projects in GDK
There are a number of metrics charts that are supported by our dashboard. Some metrics are present on the default dashboard shipped with the product, but many are not. We currently do not have a way of visualizing these.
Some metrics that we could benefit from having samples for (please add to this list if there are more):
- Multi-metrics.
- Parameterised metrics.
- Example prom query:
avg(rest_client_request_latency_seconds_sum) by (verb)
, legend label:{{verb}}
- Example prom query:
- Heatmap metrics.
- Single value metrics.
Implementation
I see a few ways to implement this:
- It is possible to add a custom dashboard by defining a
.yml
file. We could add these to the existing gdk projects.- Docs here: https://docs.gitlab.com/ee/user/project/integrations/prometheus.html#adding-a-new-dashboard-to-your-project
- Easiest by far to implement.
- It is possible to define custom metrics (which appear on the default dashboard). We could add these to the existing gdk projects - these would presumably be DB entries somewhere.
- Some mechanism (a script?) that ensures these custom metrics for new (or all) projects.
- The benefit of this would be that users wouldn't have to rely on attaching clusters to existing projects to see these metrics.
Goals
- Fewer bugs due to developers more easily being able to check certain scenarios.
- Could reuse the setup to seed feature tests.
Edited by Tristan Read