Measure CI processing delay
What does this MR do and why?
Track the time it takes for a job to leave the created status after all of
its dependencies have finished, and observe it using LabKit's user
experience SLI SDK. The new user experience is called
ci_job_processing_delay. The tracking is behind the ops feature flag
ci_observe_job_processing_delay, scoped to the current request.
References
Part of #592819
Screenshots or screen recordings
| Before | After |
|---|---|
How to set up and validate locally
- In rails console enable the feature flag
Feature.enable(:ci_observe_job_processing_delay) - In your terminal, tail the user experience SLI log for matching lines:
tail -f log/user_experience_slis.log | grep ci_job_processing_delay - Run a few pipelines and observe the logs. You should see one
"checkpoint":"start"event and one"checkpoint":"end"per CI job.
Example:
{
"severity": "INFO",
"time": "2026-04-18T03:34:56.626Z",
"correlation_id": "01KPFAFRQ9HK7A4G2Z2JBK9S15",
"meta.caller_id": "Ci::InitialPipelineProcessWorker",
"meta.remote_ip": "172.16.123.1",
"meta.feature_category": "continuous_integration",
"meta.user": "root",
"meta.gl_user_id": 1,
"meta.project": "root/test",
"meta.root_namespace": "root",
"meta.client_id": "user/1",
"meta.root_caller_id": "POST /api/:version/projects/:id/merge_requests/:merge_request_iid/pipelines",
"checkpoint": "start",
"user_experience_id": "ci_job_processing_delay",
"feature_category": "continuous_integration",
"urgency": "async_fast",
"start_time": "2026-04-18T03:34:56.372Z",
"end_time": "2026-04-18T03:34:56.626Z",
"elapsed_time_s": 0.253754,
"urgency_threshold_s": 15
}
{
"severity": "INFO",
"time": "2026-04-18T03:34:56.626Z",
"correlation_id": "01KPFAFRQ9HK7A4G2Z2JBK9S15",
"meta.caller_id": "Ci::InitialPipelineProcessWorker",
"meta.remote_ip": "172.16.123.1",
"meta.feature_category": "continuous_integration",
"meta.user": "root",
"meta.gl_user_id": 1,
"meta.project": "root/test",
"meta.root_namespace": "root",
"meta.client_id": "user/1",
"meta.root_caller_id": "POST /api/:version/projects/:id/merge_requests/:merge_request_iid/pipelines",
"checkpoint": "end",
"user_experience_id": "ci_job_processing_delay",
"feature_category": "continuous_integration",
"urgency": "async_fast",
"start_time": "2026-04-18T03:34:56.372Z",
"end_time": "2026-04-18T03:34:56.626Z",
"elapsed_time_s": 0.253754,
"urgency_threshold_s": 15
}MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
Edited by Hordur Freyr Yngvason