Assign custom Apdex targets for CI job-related endpoints
What does this MR do and why?
This MR adds urgency to job related api endpoints based on the target apdex for the endpoint.
There is a further issue to add urgency to any remaining CI endpoints, so there is not need to debate what constitutes a 'job-related' endpoint. #348554
See urgency reasoning here: !80965 (comment 848080295)
https://log.gprd.gitlab.net/goto/affbf890-9042-11ec-a649-b7cbb8e4f62e
done | json.meta.caller_id.keyword: Descending | 99.5th percentile of json.duration_s | 99.8th percentile of json.duration_s | Count | Met urgency | Target urgency |
---|---|---|---|---|---|---|
GET /api/:version/projects/:id/jobs/:job_id | 0.92232 | 1.33568 | 12,328,628 | low | low | |
POST /api/:version/projects/:id/jobs/:job_id/cancel | 1.2006 | 2.33255 | 1,608 | low | low | |
PATCH /api/:version/jobs/:id/trace | 1.25121 | 2.89419 | 105,986,684 | low | default | |
GET /api/:version/projects/:id/jobs/:job_id/trace | 1.81906 | 3.23261 | 1,390,648 | low | low | |
PUT /api/:version/jobs/:id | 1.82001 | 2.99486 | 54,538,094 | low | low | |
POST /api/:version/projects/:id/jobs/:job_id/erase | 1.90176 | 3.80858 | 151,185 | low | low | |
POST /api/:version/jobs/request | 1.95489 | 3.23034 | 81,447,654 | low | low | |
GET /api/:version/projects/:id/pipelines/:pipeline_id/jobs | 1.97645 | 2.94104 | 18,541,585 | low | low | |
POST /api/:version/projects/:id/jobs/:job_id/play | 2.47762 | 4.8353 | 17,323 | low | low | |
GET /api/:version/projects/:id/jobs | 2.77281 | 4.59908 | 61,519,236 | low | low | |
POST /api/:version/projects/:id/jobs/:job_id/retry | 3.35437 | 5.00497 | 5,343 | none | low | |
HEAD /api/:version/projects/:id/jobs | 5.6497 | 6.19481 | 31,856 | none | low |
Note: was not included in kibana data pull
- 'Get current project using job token', get ''
done | json.meta.caller_id.keyword: Descending | 99.5th percentile of json.duration_s | 99.8th percentile of json.duration_s | Count | Met urgency | Target urgency |
---|---|---|---|---|---|---|
Projects::BuildsController#index | 0.08723 | 0.1095 | 744 | high | high | |
Projects::BuildsController#show | 0.11018 | 0.14759 | 6,336 | high | high | |
Projects::PipelinesController#status | 0.24505 | 0.6466 | 1,586,991 | default | default | |
Projects::JobsController#trace | 1.05566 | 1.72372 | 31,975,772 | low | low | |
Projects::PipelinesController#stage | 1.34136 | 3.95429 | 4,490,294 | low | low | |
Projects::JobsController#play | 2.78106 | 5.04131 | 307,503 | none | low | |
Projects::PipelinesController#retry | 3.52595 | 5.05763 | 25,838 | none | low | |
Projects::JobsController#cancel | 3.20872 | 5.15745 | 78,652 | none | low | |
Projects::PipelinesController#dag | 2.36099 | 5.26155 | 910 | none | low | |
Projects::JobsController#show | 3.36814 | 5.39315 | 36,370,838 | none | low | |
Projects::PipelinesController#cancel | 3.89606 | 5.48458 | 67,290 | none | low | |
Projects::JobsController#unschedule | 2.63688 | 5.65785 | 586 | none | low | |
Projects::JobsController#retry | 4.11925 | 5.82931 | 245,388 | none | low | |
Projects::MergeRequestsController#pipelines | 4.30606 | 5.9514 | 556,969 | none | low | |
Projects::PipelinesController#new | 4.32425 | 6.13162 | 93,877 | none | low | |
Projects::Pipelines::StagesController#play_manual | 4.57003 | 6.16193 | 18,767 | none | low | |
Projects::PipelinesController#index | 4.25077 | 6.20757 | 7,796,828 | none | low | |
Projects::PipelinesController#builds | 3.43381 | 6.30485 | 70,109 | none | low | |
Projects::PipelinesController#show | 5.15064 | 6.81794 | 1,683,178 | none | low | |
Projects::JobsController#index | 5.67957 | 7.59533 | 256,881 | none | low | |
Projects::JobsController#erase | 4.54406 | 8.42743 | 705 | none | low | |
Projects::PipelinesController#failures | 5.1812 | 8.4973 | 13,943 | none | low | |
Projects::PipelinesController#create | 11.31067 | 17.02618 | 84,157 | none | low | |
Projects::JobsController#raw | 17.85542 | 29.17033 | 14,707 | none | low |
Notes:
- Projects::BuildsController#raw has no kibana results
- Projects::JobsController#status has no kibana results
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #344667 (closed)
Edited by Allison Browne