Add compute minute breakdown by project to the card in Fleet Dashboard
Release notes
As the next step to getting towards cost visibility of your Runner Fleet, we are providing a breakdown of minutes for instance runners. This will help you get a sense of runner usage across projects and groups.
Problem to solve
Platform engineers/Infra operators do not have an easy way of knowing which runners in their Fleet have the most usage, or even the total runner usage as a company.
Proposal
- Add a total number of minutes run by all instance runners in the last 30 days to the Fleet dashboard
- List the top 5 used instance runners with minute totals
- List the top 5 projects that consume the most instance runner minutes with minute totals
- Be able to export the data for all runner usage by project to .csv
Note: Previously, our platform used "CI minutes" interchangeably with "compute minutes", this is being updated: gitlab-com&2150 (closed)
Intended users
Research that backs up this feature
The underlying factor for costs to be calculated is runner usage (the time it takes for a runner to complete jobs from start to end). Not only does this metric enable customers to manually calculate cost themselves (this makes their experience better than today because they have to calculate usage first), but usage itself can be used to define (1) the most commonly used runners and (2) which projects consume shared runners the most. Both of these findings can help organizations optimize their Fleet to account for usage data.
Referenced customer session verbatim:
It would be helpful if the job count went higher than "1000+". For on-prem installations with hundreds to thousands of active projects and a common fleet of runners the count very quickly becomes capped and is not very useful. With that many projects, and without full counts, even the lesser-used runners cap out at 1000+, so it's hard to tell actual usage from the admin/runners page. It would be more helpful to see the actual job count, even if that's millions or billions of jobs. (source)
They want to know which runners are taking time, which one should they add more resources to, and which one is not being used so they can move the resources to the popular one. (source)
I need to understand which projects are the biggest users of the shared runner pools that my team maintains? (source from epic)
For cost-distribution, the systems team wants to see who is using what type of runner and for how long. (source from epic)
As a GitLab admin, in order to track costs for shared runner minutes (instance) incurred by applications, I need a report of shared runner minutes usage per asset id. (source from epic)
Some users wanted to see a summary of jobs ran across runners. This would help them evaluate how busy the runners get compared to others. This also seems like a way to evaluate costs and who is using X runner minutes the most. (source)
To improve performance, they would like to see runner usage overview - so they could know if they should add additional runners (source)
Cross-group feature?
Yes, this overlaps with grouppipeline execution.
Feature Usage Metrics
Does this feature require an audit event?
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.
This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.