Skip to content

Create new Service Ping metrics to track CI Leading Indicators

What does this MR do and why?

We want better insights into pipelines that are being created, see #429942

  1. Adds the source (e.g. a push) and the config_source (e.g. a gitlab-ci file) to the properties being tracked for the create_ci_internal_pipeline_event.
  2. Adds metrics to track:
    1. unique projects that create a pipeline
    2. unique projects that create a pipeline from a gitlab-ci file
    3. total number of pipelines being created from a gitlab-ci file
    4. total number of pipelines being created by schedules

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Screenshot_2024-08-21_at_21.23.55

How to set up and validate locally

  1. Run internal events monitor via rails runner scripts/internal_events/monitor.rb create_ci_internal_pipeline
  2. You should see an event with label=web and property=repository_source
  3. Manually create a CI pipeline in a project through the UI: All the metrics apart from the one counting scheduled pipelines should increase.
  4. Create a CI pipeline schedule and trigger the schedule. The schedule related metrics should increase. The unique counts for project should not increase if you used the same project as in the last step.
  5. Trigger a pipeline from a different project to see the count_distinct_project_id... metrics increase

Related to #429942

Edited by Sebastian Rehm

Merge request reports

Loading