Create "Job Inputs" Dashboard for Interpolation Metrics
Overview
This issue proposes creating a dedicated dashboard to visualize the Job Inputs interpolation metrics that were recently instrumented in gitlab-runner. The metrics track interpolation usage, failures, and error types across runner instances.
Metrics Being Visualized
The dashboard will visualize these Prometheus metrics introduced in !6047 (merged):
-
gitlab_runner_job_inputs_interpolations_total: Total interpolations where expressions were actually used -
gitlab_runner_job_inputs_interpolation_failures_total: Failed interpolations, labeled by error type (parse error, evaluation error, unsupported sensitive values)
Proposed Solutions
Option 1 (Recommended): Create a new dedicated dashboard
- Location:
job-inputs.dashboard.jsonnet(https://gitlab.com/gitlab-com/runbooks/-/blob/master/dashboards/ci-runners/job-inputs.dashboard.jsonnet) - Provides focused visibility into Job Inputs feature adoption and health
- Allows for future expansion as the feature matures
Option 2: Add to existing dashboard
- Could integrate into
business-stats.dashboard.jsonnet(https://gitlab.com/gitlab-com/runbooks/-/blob/master/dashboards/ci-runners/business-stats.dashboard.jsonnet) ormain.dashboard.jsonnet(https://gitlab.com/gitlab-com/runbooks/-/blob/master/dashboards/ci-runners/main.dashboard.jsonnet) - Pros: Consolidates related metrics
- Cons: May dilute focus on this specific feature
Proposed Charts for New Dashboard
-
Interpolation Success Rate Over Time (Line chart)
- Shows the ratio of successful interpolations vs. total attempts
- Helps identify if error rates are increasing/decreasing
- Breakdown by error type (parse, evaluation, sensitive value)
-
Interpolation Failure Rate Breakdown (Pie/Donut chart)
- Shows distribution of failure types: parse errors, evaluation errors, unsupported sensitive values
- Helps identify which error category needs attention
- Can inform future improvements to error handling
Next Steps
- @timofurrer and @tmaczukin will meet next week to refine this
- Decide between Option 1 (new dashboard) vs Option 2 (add to existing)
- Refine chart selections based on observability needs
- Create the dashboard file in runbooks repository
- Add dashboard link to relevant documentation
Edited by Timo Furrer