Adds instrumentation to interpolation
What does this MR do and why?
Adds instrumentation to interpolation: #396722 (closed)
How to set up and validate locally
- Observe that the Service Ping payload includes
ci_interpolation_users_monthly
andci_interpolation_users_weekly
subkeys.
Run the following commands in the console:
service_ping_payload = Gitlab::Usage::ServicePingReport.for(output: :non_sql_metrics_values)
service_ping_payload['redis_hll_counters']['pipeline_authoring']
- Run the following command and note the outputted value (it should be 0 if you haven't run Step 4 yet).
::Gitlab::UsageDataCounters::HLLRedisCounter.unique_events(event_names: 'ci_interpolation_users', start_date: Date.today, end_date: Date.today + 7.days, context: '')
- Go to your Project's CI/CD Editor and update the contents with:
#.gitlab-ci.yml
include:
- local: template.yml
inputs:
stage: deploy
job_prefix: "my-app-"
#template.yml
spec:
inputs:
stage:
default: test
job_prefix:
default: ""
---
"$[[ inputs.job_prefix]]deploy":
stage: $[[ inputs.stage ]]
script: echo "deploy $[[ inputs.stage ]]"
- Commit the changes and wait for the pipeline to complete running. Now observe the counter value again. It should have incremented by 1.
::Gitlab::UsageDataCounters::HLLRedisCounter.unique_events(event_names: 'ci_interpolation_users', start_date: Date.today, end_date: Date.today + 7.days, context: '')
- If you'd like to see the Service Ping payload counters incremented, then you can track a mocked event set to a week ago and then check the Service Ping payload output.
::Gitlab::UsageDataCounters::HLLRedisCounter.track_event('ci_interpolation_users', values: 1, time: Date.today - 7.days)
service_ping_payload = Gitlab::Usage::ServicePingReport.for(output: :non_sql_metrics_values)
service_ping_payload['redis_hll_counters']['pipeline_authoring']
NOTE: Huge shoutout and thank you to @lma-git for providing these steps for testing the instrumentation.
Once this is merged
you can see the query in: https://metrics.gitlab.com/?q=interpolation, and then use that to add a widget to Sisense.
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.
Edited by Laura Montemayor